解决方案 »

  1.   

    我父级窗口打开明细页面,操作后刷新父级窗口是用的委托,现在直接用的Dialog,所以前一窗口没有被销毁,可以直接拿来用
     FuncTreeDialogForm f = (FuncTreeDialogForm)App.Resolve<IFuncTreeDialogForm>();
          DialogResult dr = f.ShowDialog();
          if (dr != DialogResult.Cancel)
          {
            this.funcButtonEdit.Text = f.SelectedFunc.Func_Full_Name;
            this.funcButtonEdit.EditValue = f.SelectedFunc.Func_Full_Name;
            this.Bug.Func_Id = f.SelectedFunc.Func_Id;
          }
          f.Close();
    这样的话,我选择一个功能后,ButtonEdit显示对应的名字,加载的时候也是对应的名字,可是如果我点击其他空白处,ButtonEdit就会变成对应的Id了,改问题如何解决??
    我绑定数据代码:
    this.funcButtonEdit.DataBindings.Add(new Binding("EditValue", this.Bug, "Func_Id"));
              this.funcButtonEdit.Text = this.Presenter.FuncService.LoadFunc(this.Bug.Func_Id).Func_Full_Name;
              this.funcButtonEdit.EditValue = this.funcButtonEdit.Text;
    还有一点EditValue和Text有必要都设置吗??
      

  2.   

    在B窗体里面定义一个全局变量存储选择的节点trFocusedNode 
    在A中 显示B 时候 判断是否按有选择
     DialogResult rs = f.ShowDialog(this);
     if (rs == DialogResult.OK)
     {
        string stringName =f.trFocusedNode.GetValue("Func_Full_Name");
     
     } 
      

  3.   


    这个我也解决了,this.funcButtonEdit.DataBindings.Add(new Binding("EditValue", this.Bug, "Func_Id"));这样绑定确实有点问题,我直接写结果,在后面的事件中会为Bug.Func_Id重新赋值,保存时直接取就是最新值了
    例外最后一点,treeList里面展开到指定节点是哪个?怎么只有一个ExpandAll()方法,是展开所有节点啊