C#问题,高分!

来源:百度知道 编辑:UC知道 时间:2024/06/02 13:20:34
private void ShowPanel(Panel panel, bool visible)
{
IValidator validator;//接口验证

foreach (Control ctrl in panel.Controls)
{
//check to see if its a validator
if ( ctrl is IValidator)
{
validator = (IValidator)ctrl;
ctrl.Visible = visible;
if (!visible)
{
validator.Validate();
}
}
}
panel.Visible = visible;
}

最好逐句解释
2楼再详细点行吗?我没怎么看明白,比如bool visible呢?再改改,拜托了,急用,因为看不懂的话,后面的就没法做。

先谢谢大哥啊

回3楼,我是来求解的,这段代码是能运行的,绝对没有问题,谁能给个详解,分就是谁的.

bool visible这个参数的值,是决定这个容器和容器中的实现了验证接口的控件是否可见,true就可见,false就隐藏

private void ShowPanel(Panel panel, bool visible)
//传递2个参数,一个容器PANEL,一个BOOL值visible
{
IValidator validator;//声明一个验证接口

foreach (Control ctrl in panel.Controls) //循环遍历这个panel中的控件
{
//check to see if its a validator
if ( ctrl is IValidator) //如果这个控件实现了验证接口
{
validator = (IValidator)ctrl; //强制转换成验证接口
ctrl.Visible = visible; //根据传进来的visible参数设置可见性
if (!visible)
{
validator.Validate(); //验证
}
}
}
panel.Visible = visible; //设置容器的可见性
}

正在学,不过你这个没看懂,等回来我哥们来了我问问他,要是会我再来修改,先来刷刷分

private void ShowPanel(Panel panel, bool visible) //传递进来一个 panel
{
IValidator validator;//接口验证

foreach (Control ctrl in panel.Controls) //循环遍历这个panel中的控件
{
//check to see if its a validator
if ( ctrl is IValidator) //如果这个空间是接口验证
{
validator = (IValidator)ctrl; //强制转换成接口验证