当前位置: 首页 > 知识库问答 >
问题:

使用C中其他表单的参数将子节点添加到TreeView#

闾丘炫明
2023-03-14

我有一个主表格和一个树状图。我添加父节点树视图通过单击一个按钮。

        SegmentTreeView.BeginUpdate();
        SegmentTreeView.Nodes.Add(SegmentNameTextBox.Text);
        SegmentTreeView.SelectedNode = SegmentTreeView.Nodes[0];
        SegmentTreeView.ExpandAll();
        SegmentTreeView.EndUpdate();

我有一个表单——比方说FormB——通过单击主表单上的按钮来显示。FormB上有一个组合框和一个按钮。当我点击FormB上的“确定”按钮时,我需要根据FormB上combobox的选择在树的选定节点下创建子节点。例如,如果在FormB的组合框中选择Index0并单击“确定”,我必须在之前创建的父节点下创建一个子节点。如果选择index1,则两个子节点,依此类推。

我试过几种方法。然而,我的表格。树状视图。已选择的节点。节点。添加(新节点);始终返回NULL。因此,在添加时会出现错误。

请帮助解决这个问题。

共有1个答案

令狐灿
2023-03-14

您可以通过在FromB上创建一个getter属性来实现这一点,在FormA中显示FormB后可以引用该属性。

例子:

FormB上,添加一个类似以下内容的getter属性:

public int UserSelection
{
  get { return combobox.SelectedIndex(); }
}

还可以使用OK按钮将对话框结果值设置为OK

DialogResult = System.Windows.Forms.DialogResult.OK;

然后在FormA上调用表单并按如下方式使用它:

private void someButton_Click(object sender, EventArgs e)
{
  using (FormB newForm = new FormB())
  {
    if (newForm.ShowDialog(this) == DialogResult.OK)
    {
      switch (newForm.UserSelection)
      {
        case 0:
          {
            // Add one node
            break;
          }
        case 1:
          {
            // Add two nodes
            break;
          }
        case 2:
          {
            // Add x nodes, etc
            break;
          }
      }
    }
  }
}
 类似资料:
  • 我有Point2D类作为基类,为了存储点列表,我通常使用,但现在我想在中添加额外的方法和一些属性,比如用于打印的ToString方法,基于特定坐标的排序,用于筛选点的特定方法,我不想使用扩展方法。 我创建了一个新的类,它继承了类,它在正常情况下工作很好,但是当使用FindAll函数时,它现在返回但我希望它返回。我知道我可以编写自己的方法来接受谓词委托,但这是太多的工作了。

  • 我正在研究一个xslt,它将用于翻译一组xmls文件,一个示例输入xml类似于:- 我想通过创建属性为id=“A12”的节点“book”的副本对其进行转换,条件是,如果属性为id=AA12的节点book不存在,则创建节点“book”的副本(属性为id=“A12”),并在副本中将id更改为“AA12”(因此其属性值更改的节点副本),但如果属性为book的节点(id=“AA12”)已经存在于xml中,

  • 问题内容: 是否可以通过单个AJAX请求发送 表单 元素(使用方法序列化)和其他参数? 例: 如果不是,将表单与其他参数一起提交的最佳方法是什么? 谢谢 问题答案: 有效地将表单值转换为有效的查询字符串,因此您可以简单地将其附加到字符串:

  • 问题内容: 这是我所拥有的: 如何编写代码以在列表末尾添加节点? 所以如果我有 我怎么去 其实…我什至不确定是否要添加到最后。我认为添加然后排序是有效的吗?不确定。 谢谢! 问题答案:

  • 我已经创建了一个XSLT,我想知道如何在一组标记之间复制所有节点,并在底部添加另一个标记。我创建了XSLT,它具有确定要添加哪个标记以及应该调用什么的所有逻辑。然而,我现在遇到的问题是,我不能复制所有其他标签了。以下是有关文件: XSLT 输入 电流输出 期望的产出

  • 我有一个非常简单的节点结构,用于实现迭代深化DFS。然而,我后来在将子节点链接到父节点时遇到了麻烦。 后来在我的代码中,当我试图做这样的事情时,我会遇到严重的错误: 我只想将这个子节点(称为Down_节点)链接到它的父节点(称为Next)。但如果Next本身不是一个节点,我该怎么做呢? 正是指向下一步的指针带来了麻烦。我试过了 编辑:当我尝试使用 在/usr/lib/gcc/x86_64-redh