尝试从表单中删除附件时,我遇到了一些InfoPath C#代码的问题。
基本上这个过程是:
我尝试在我的架构中添加一个永不填充的空白附件,然后通过下面的方法将原始字段的值设置为等于该值。调试表单时,我发现错误:架构验证发现非数据类型错误。这里的任何提示将不胜感激。
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博士
编辑 - P.S.我应该清楚这两个_OriginalAttachment& _ErrorField都是XPathNavigators,指向不同的架构元素。我已经验证这些XPathNavigators都指向有效的架构元素。
答案 0 :(得分: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);
}
}
这减轻了我遇到的任何错误。