我将控件绑定到一个xmldocument,并使用“xpath”绑定表达式输出数据:

<div class="Bio"><%# XPath("Biography") %></div>

但是,这将返回“biography”元素的innerText属性,而不是innerXML。这意味着它会去掉所有的内部标签,这不是我想要的。
我查看了xpathbinder对象,但无论如何都找不到让它返回innerXML而不是innerText的方法

最佳答案

xpath返回的是一个值而不是一个节点,因此您将无法通过这种方式获取innerXML。您能定义一个返回selectsinglenode(…).innerXML的方法吗?如果您定义了一个方法,例如

public string GetInnerXml(object o)
{
    string val = String.Empty;
    XmlNode parent = o as XmlNode;
    XmlNode child = parent.SelectSingleNode("bob/fred");
    if (child != null)
        val = child.InnerXml;
    return val;
}

然后从绑定表达式中调用它,这应该能起到作用。代码应该是正确的,但我没有测试它,所以可能有错误。

10-07 16:46