0
 protected void RadTreeView1_NodeClick(object sender, RadTreeNodeEventArgs e)
    {

        if (e.Node.Level != 0)
        {
            // value of the selected child node
            string text = e.Node.Value;
        }
    }


ここで、テキスト値を常にnullにしています...助けてください
radtreeノードクリックイベントで、ノード値を取得しようとしました

                   <telerik:RadTreeView ID="RadTreeView1" runat="server" Width="300px" Height="100px" Skin="Metro" OnNodeClick="RadTreeView1_NodeClick" AutoPostBack="true" OnClientNodeClicked="">
            <DataBindings>
                <telerik:RadTreeNodeBinding Expanded="True"></telerik:RadTreeNodeBinding>
            </DataBindings>
        </telerik:RadTreeView>


   private void BindGrid()
    {
        try
        {
            DataView dv;

            string json = class.HttpGet(url + "Services/Product.svc/ProductCategorySD1");
            json = Regex.Unescape(json);
            dt = (DataTable)JsonConvert.DeserializeObject(json.Trim(new Char[] { ' ', '"', '.' }), typeof(DataTable));
            dv = dt.DefaultView;
            grid.DataSource = dv;
            grid.DataBind();
            RadTreeView1.DataTextField = "ProductCategoryName";
            RadTreeView1.DataFieldID = "ProductCategoryRowId";
            RadTreeView1.DataFieldParentID = "ParentProductCategoryRowId";
            RadTreeView1.DataSource = dt;

            RadTreeView1.DataBind();
        }
        catch (Exception Err)
        {

        }
        finally { }

    }


完全にツリーバインド..................................................

4

1 に答える 1

0

DataValueFieldプロパティを明示的に設定してから、操作実行する必要がRadTreeViewあります。DataBind

RadTree1.DataTextField = "MyTextColumn" 
// following line is absent from supplied sample in the OP
RadTree1.DataValueField = "MyValueColumn" 
RadTree1.DataFieldID = "MyID"
RadTree1.DataFieldParentID = "MyParentID"

RadTree1.DataSource = ds
RadTree1.DataBind()

OPで提供されているサンプルコードでは、設定のみDataTextFieldを行っています。私の推測では、あなたが次のようにすれば:

string text = e.Node.Text; 

のテキストを正常に読み取ることができますRadTreeNode

于 2015-01-19T13:01:26.673 に答える