Infopath と C# を組み合わせて作業しようとしています。これには、現在クリップボードにあるものから多くの HTML フォーマット (改行を維持することを除く) を削除するための特別な貼り付けボタンの作成が含まれますが、前にクリップボードの本文全体で特定の文字列を見つけようとする必要もあります。特定の基準に基づいて貼り付けられます。c で始まり、その後に 8 桁の数字が続く文字列の部分 (「c01234567」のようなもの) を見つけようとしているので、値をクリップボードの残りの部分とは別に保存できます。
public void PASTE_Special_Clicked(object sender, ClickedEventArgs e)
{
XPathNavigator Notes = MainDataSource.CreateNavigator().SelectSingleNode("/my:myFields/my:Issue/my:I_TroubleshootingSteps", NamespaceManager);
string ClipboardValue = Clipboard.GetText(TextDataFormat.Html);
ClipboardValue = ClipboardValue.Substring(ClipboardValue.IndexOf("</HEAD>"));
ClipboardValue = ClipboardValue.Replace("<LI>", "&@");
ClipboardValue = Regex.Replace(ClipboardValue, @"<[^>]*>", String.Empty);
ClipboardValue = ClipboardValue.Replace("&@", "<div xmlns=\"http://www.w3.org/1999/xhtml\"/>");
ClipboardValue = ClipboardValue.Replace("–", "-");
Notes.AppendChild("<div xmlns=\"http://www.w3.org/1999/xhtml\"/>");
Notes.AppendChild(ClipboardValue);
}