0

我有一个 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>
4

1 回答 1

1

我假设服务方法的签名是固定的:

RadTreeNodeData[] WebServiceMethodName(RadTreeNodeData节点,对象上下文)。

您应该将“ExpandedNode”重命名为“节点”。

于 2011-07-26T20:57:27.270 回答