0

フォームから添付ファイルを削除しようとしているときに、いくつかの InfoPath C# コードで問題が発生しました。

基本的にプロセスは次のとおりです。

  1. ユーザーがフォームを開く
  2. ユーザーがボタンをクリック
  3. 添付ファイルが消去されました

空の添付ファイルを自分のスキーマに追加しようとしましたが、これはデータが入力されることはなく、次の方法で元のフィールドの値をその値と同じに設定しました。フォームをデバッグすると、エラーが発生します: スキーマの検証でデータ型以外のエラーが見つかりました。ここでのヒントをいただければ幸いです。

public void BTN_ClearAttachment_Clicked(object sender, ClickedEventArgs e)
{
   try
   {
       _OriginalAttachment.SetValue(_BLANK_ATTACHMENT.Value);
   }
   catch (Exception ex)
   {
       _ErrorField.SetValue(ex.Message + " : " + ex.StackTrace);
   }
}

ありがとう、

Z博士

編集 - PS _OriginalAttachment と _ErrorField の両方が両方とも XPathNavigators であり、異なるスキーマ要素を指していることを明確にする必要があります。これらの XPathNavigator が両方とも有効なスキーマ要素を指していることを確認しました。

4

1 に答える 1

0

理解した。私が行った方法は、ReplaceSelf(string) を呼び出して、空のバージョンの XML ノードを渡すことでした。

public void BTN_ClearAttachment_Clicked(object sender, ClickedEventArgs e)
{
   try
   {
       _OriginalAttachment.ReplaceSelf("<my:OriginalAttachment></my:OriginalAttachment>");
   }
   catch (Exception ex)
   {
       _ErrorField.SetValue(ex.Message + " : " + ex.StackTrace);
   }
}

これにより、発生していたエラーが軽減されました。

于 2010-03-25T20:28:37.157 に答える