我有一个 radtreeview,我最初是页面代码中的数据绑定,但任何节点扩展都依赖于对 SVC Web 服务的调用。问题是当事件正确触发并从我的网络服务中运行以下方法时:
[OperationContract]
[WebMethod]
public RadTreeNodeData[] TreeViewNodeExpand(RadTreeNodeData ExpandedNode,
object context) {
// blah blah some code
}
RadTreeNode ExpandedNone 参数为空。当我在后面的代码中构建初始树时,我设置
List<RadTreeNode> collection
= (data.Select(x => new RadTreeNode
{
Category = category,
ExpandMode = WebService,
Value = x.Value.ToString(),
Text = x.Text,
DataItem = 555
})).ToList();
我明确地将 DataItem 设置为“555”。当 webservice 方法触发时,我是否遗漏了为什么 RadTreeNodeData ExpandedNode 为空?
我的 radtreeview 标记如下:
<telerik:RadTreeView ID="treeView" CheckBoxes="true" PersistLoadOnDemandNodes="true"
TriStateCheckBoxes="True" runat="server" CheckChildNodes="True" CausesValidation="false"
EnableEmbeddedSkins="false" Skin="VBoD">
<WebServiceSettings Path="~/WebServices/Retriever.svc" Method="TreeViewNodeExpand">
</WebServiceSettings>
</telerik:RadTreeView>