当前位置:编程学习 > C#/ASP.NET >>

关于vs的一个问题

如何程序中实现vs的这个功能:当新建一个窗体,点确定后,在解决方案资源管理器的treeView中立即显现新增的窗体名? --------------------编程问答-------------------- 本来就是这样啊?你的不是这样显示的? --------------------编程问答-------------------- 通过treeiew刷新实现 --------------------编程问答-------------------- 我是说我有一个程序,FORM1是父窗体,FORM2是子窗体,FORM2上有一个treeview,节点的名称是后台数据库的内容,FORM1和FORM2均处于打开状态,现在通过FORM1的菜单打开FORM3,在FORM3上给后台数据库新增一条记录,当关闭FORM3时,FORM2上的treeview节点名称同时得到更新。如何实现? --------------------编程问答-------------------- update一下或bind一下了。 --------------------编程问答-------------------- 问题是我在FORM3上如何用代码使FORM2上的treeview重新bind? --------------------编程问答-------------------- 楼主说的意思是要在主窗体中操作子窗体的treeview 你在from2的设计类中,将treeview权限修改为public 就行了,这样form1中就能访问了,你在from1中对from3.show()后,数据库操作完了后,再查询数据库数据绑定treeview应该就行吧,??不知楼主是这个意思不? --------------------编程问答-------------------- Form3通过MdiParent属性找到Form1

Form1通过MdiChildren[]子窗体数组找到Form2,操作Form2的TreeView就可以了

--------------------编程问答-------------------- Form1 f1 = (Form1)Form3.MdiParent;
Form2 f2 = (Form2)f1.MdiChildren[0];//假设是第0个窗体
操作f2.TreeView就OK了 --------------------编程问答-------------------- 问题是我如何在FORM3上执行FORM2上TreeView的bind方法? --------------------编程问答-------------------- 把这代码放到Form3里执行就行了啊

private void RefreshForm2(){

    Form1 f1 = (Form1)Form3.MdiParent; 

    Form2 f2 = null;
    foreach(Form frm in f1.MdiChildren)
    {
        if(frm is Form2)
        {
           f2=(Form2)frm;
           break;
        }
    }
    if(f2==null)return;//没找到
    f2.BindTree();//Form2的BindTree方法要公开
}
--------------------编程问答-------------------- 使用委托,运行后提示:"未将对象引用设置到对象的实例。" 为什么?
Form3的代码
public delegate void SendMess(); 
public event SendMess SendBindDatum;

private void buttonOK_Click(object sender, EventArgs e)
{
    this.SendBindDatum();
    this.Close();
}

Form2的代码
private Form3 frmForm3 = new Form3();
frmForm3 = new Form3();
frmForm3.SendBindDatum += new Form3.SendMess(SendBindDatum);

private void SendBindDatum()
{
   this.BindDatum();
} --------------------编程问答-------------------- 返回一个事件,UPDATE一下你的TREEVIEW就可以啊. --------------------编程问答-------------------- public delegate void SendMess(); 
public event SendMess SendBindDatum; 
不是已经定义委托和事件了吗?
"未将对象引用设置到对象的实例。" 指的是什么呀?代码错在哪里呀? --------------------编程问答-------------------- 等得好心急呀!!!!
补充:.NET技术 ,  C#
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,