Расширение .NET TreeView CheckBox - PullRequest
1 голос
/ 13 мая 2011

У меня есть элемент управления .NET TreeView с флажками на листьях. Я хочу иметь возможность получить значение узла, когда установлен флажок. По сути, это дерево контактов электронной почты, и когда пользователь устанавливает флажок, я хочу получить значение узла (адрес электронной почты) и поместить его в текстовое поле. Вторая часть не проблема, я просто вызову функцию JS, чтобы добавить электронное письмо в текстовое поле.

Итак, проблема в том, как извлечь значение узла из флажка с помощью JS. Если у кого-то нет альтернативного метода, я думал о том, чтобы расширить TreeView, чтобы он не включал обычный флажок, а скорее тот, который может хранить значение. Примечание: у меня есть существующий элемент управления с именем CheckBoxValue, который будет делать именно это. По сути, мой вопрос заключается в том, как я могу расширить TreeView, чтобы включить это? Я полагаю, что это будет в методе CreateChildControls, но хотелось бы немного помочь.

Есть идеи?

Спасибо, Райан

1 Ответ

0 голосов
/ 13 мая 2011

Если значение, которое вы пытаетесь сохранить, является строкой, вы можете использовать TreeNode.Value для его сохранения. Вот пример, на который вы могли бы сослаться.

 <asp:TreeView ID="TreeView1" runat="server"  onclick=" __doPostBack('','');"
        ontreenodecheckchanged="TreeView1_TreeNodeCheckChanged">
    </asp:TreeView>

и загрузить дерево

        if (!IsPostBack)
        {
            TreeNode node = new TreeNode("RootNode");
            TreeView1.Nodes.Add(node);

            TreeNode childNode = new TreeNode("ChildNode");
            childNode.ShowCheckBox = true;
            childNode.Value = "foo@bar.com";
            node.ChildNodes.Add(childNode);
        }

и обработчик события checkChanged

    protected void TreeView1_TreeNodeCheckChanged(object sender, TreeNodeEventArgs e)
    {
        TextBox1.Text = e.Node.Value;
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...