0

最初はページコードでデータバインディングを行っているradtreeviewがありますが、ノード拡張はSVCWebサービスの呼び出しに依存しています。問題は、イベントが適切に発生し、Webサービスから次のメソッドを実行している間です。

[OperationContract]
[WebMethod]
public RadTreeNodeData[] TreeViewNodeExpand(RadTreeNodeData ExpandedNode, 
                                                object context)    {
          // blah blah some code
}

RadTreeNodeExpandedNoneパラメーターがnullです。コードビハインドで最初のツリーを構築したとき、

List<RadTreeNode> collection 
= (data.Select(x => new RadTreeNode
{
    Category = category,
    ExpandMode = WebService,
    Value = x.Value.ToString(),
    Text = x.Text,
    DataItem = 555
})).ToList();

DataItemを明示的に「555」に設定しました。Webサービスメソッドが起動したときにRadTreeNodeDataExpandedNodeがnullになる理由について何かが足りませんか?

私の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

サービスメソッドのシグネチャはstronlyで修正されていると思います。

RadTreeNodeData [] WebServiceMethodName(RadTreeNodeDataノード、オブジェクトコンテキスト)。

'ExpandedNode'の名前を'node'に変更する必要があります。

于 2011-07-26T20:57:27.270 に答える