父控件:namespace SYSBASE_CTL
{
public partial class ComBoxStyle1 : UserControl
{
protected string labelText;
protected DataSet dataSet;
protected string displayName="";
protected string valueMember=""; public event EventHandler GetConTent; public ComBoxStyle1()
{
InitializeComponent();
} private void ComBoxStyle1_Load(object sender, EventArgs e)
{
label1.Text =labelText;
panel1.Width = label1.Width; try
{
comboBox1.DataSource = dataSet.Tables[0].DefaultView;
comboBox1.DisplayMember = displayName;
comboBox1.ValueMember = valueMember;
}
catch
{
}
} protected void OnGetConTent(object sender,EventArgs e)
{
if (GetConTent != null)
GetConTent(sender, e);
} private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
{
if(comboBox1.ValueMember!="")
OnGetConTent(comboBox1.SelectedValue , e);
}
}
}继承的子控件:
namespace ZJ_CTL
{
public partial class SYSPZK_ZllyCombox : SYSBASE_CTL.ComBoxStyle1
{
public SYSPZK_ZllyCombox()
{
InitializeComponent(); labelText = "药品治疗领域:"; dataSet = null; ZJ.SYSPZK syspzk = new ZJ.SYSPZK();
dataSet = syspzk.GetZlly();
displayName = "ZW";
valueMember = "NM";
}
}
}问题1:父控件的Load事件是什么时候触发的,它和子控件的构造public SYSPZK_ZllyCombox()是什么关系?实际使用中,它好象先于
ZJ.SYSPZK syspzk = new ZJ.SYSPZK();
dataSet = syspzk.GetZlly();
displayName = "ZW";
valueMember = "NM";
就执行了问题2:
protected void OnGetConTent(object sender,EventArgs e)
{
if (GetConTent != null)
GetConTent(sender, e);
}
GetConTent!=null是什么意思?谢谢!
{
public partial class ComBoxStyle1 : UserControl
{
protected string labelText;
protected DataSet dataSet;
protected string displayName="";
protected string valueMember=""; public event EventHandler GetConTent; public ComBoxStyle1()
{
InitializeComponent();
} private void ComBoxStyle1_Load(object sender, EventArgs e)
{
label1.Text =labelText;
panel1.Width = label1.Width; try
{
comboBox1.DataSource = dataSet.Tables[0].DefaultView;
comboBox1.DisplayMember = displayName;
comboBox1.ValueMember = valueMember;
}
catch
{
}
} protected void OnGetConTent(object sender,EventArgs e)
{
if (GetConTent != null)
GetConTent(sender, e);
} private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
{
if(comboBox1.ValueMember!="")
OnGetConTent(comboBox1.SelectedValue , e);
}
}
}继承的子控件:
namespace ZJ_CTL
{
public partial class SYSPZK_ZllyCombox : SYSBASE_CTL.ComBoxStyle1
{
public SYSPZK_ZllyCombox()
{
InitializeComponent(); labelText = "药品治疗领域:"; dataSet = null; ZJ.SYSPZK syspzk = new ZJ.SYSPZK();
dataSet = syspzk.GetZlly();
displayName = "ZW";
valueMember = "NM";
}
}
}问题1:父控件的Load事件是什么时候触发的,它和子控件的构造public SYSPZK_ZllyCombox()是什么关系?实际使用中,它好象先于
ZJ.SYSPZK syspzk = new ZJ.SYSPZK();
dataSet = syspzk.GetZlly();
displayName = "ZW";
valueMember = "NM";
就执行了问题2:
protected void OnGetConTent(object sender,EventArgs e)
{
if (GetConTent != null)
GetConTent(sender, e);
}
GetConTent!=null是什么意思?谢谢!
解决方案 »
- c# c/s 之间如何做心跳检测 急啊,求助!
- 模拟器(PPC2003)中获取当前时间的问题
- 怎么给dbf数据库添加、删除字段啊?
- 应该属于RadioButtonList属性的问题!!!
- 表中多条记录有相同的ID,怎么样汇总?
- 急急急!!!请教各位高手如何删除DataGrid中任意被选中的行
- 请问有什么安装程序可以配置windows服务和IIS设置?
- 二维数组如何在listview中显示?求纠正,谢谢。
- 大家都知道文件下载的方法。我想再服务器端把文件以stream的方式推出来,到客户端后类似于文件下载的方法让用户保存。包括(txt.doc文件
- 如何把TextBox1.Text的值转换为int 类型?
- 请问如何锁住注册表的某一项?
- 头脑糊涂了,不知道怎么做了!
问题二,没有GetConTent事件被设置,则调用之
问题二,GetConTent事件如果被注册,则执行。
ZJ.SYSPZK syspzk = new ZJ.SYSPZK();
dataSet = syspzk.GetZlly();
displayName = "ZW";
valueMember = "NM";
后再调用,父控件的Load,但现在Load肯定先执行了: private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
{
if(comboBox1.ValueMember!="") 如果不加这一句的话,
comboBox1.SelectedValue最初的值是:System.Data.DataRow...
OnGetConTent(comboBox1.SelectedValue , e);
}
try
{
是这三句的次序的原因!
comboBox1.DataSource = dataSet.Tables[0].DefaultView;
comboBox1.DisplayMember = displayName;
comboBox1.ValueMember = valueMember;
}
catch
{
}但还是有另外一个问题,因为在设计父控件的时候,并没有dataSet,所以我只能try它,否则就出错。不知道各位高手有什么办法。早先VB是有一个状态表示是控件设计时,还是运行时!谢谢