活动和代表...... [英] Events and delegates...

查看:43
本文介绍了活动和代表......的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述



您好,

我已经填写了一张表格,其中包含动态创建的无线电按钮,表格为
。当他们的

..CheckChanged属性发生变化时,我会打开一些单选按钮来触发事件。

我理解并被告知这可以通过事件和代表完成。但我的

代码将无法编译。这就是我所做的。


public delegate void specialRadioEventHandler(object sender,EventArgs e);


....


....


....


private void BuildMyDialog()
< br $>
{


//动态创建我的表格。函数调用

page_Load(IsPostBack == false)


....


....


....


RadioButton rb = new RadioButton();


if( RadioMeetMycodnition)


{


rb.AutoPostBack = true;


rb.CheckedChanged + = new MyOwnEventHandler(DoSomething);


}


public voidDoSomething(object sender,EventArgs e)


{


//仅用于测试目的。


string teststring =" oi";


Response.Write(teststring);


}

.......


.......


.....


我做错了什么?


谢谢......


Hello,
I have populated an a web form with dynamically created radiobuutons in
a table. I wnat some of the radio buttons to fire events when their
..CheckChanged property has changed.
I understand and was told this can be done with events and delegates. But my
code would
not compile. Here is what i did.

public delegate void specialRadioEventHandler(object sender, EventArgs e);

....

....

....

private void BuildMyDialog()

{

//Dynamically creating my table . Function called in
page_Load(IsPostBack==false)

....

....

....

RadioButton rb = new RadioButton();

if (RadioMeetMycodnition)

{

rb.AutoPostBack = true;

rb.CheckedChanged+=new MyOwnEventHandler( DoSomething );

}

public voidDoSomething (object sender, EventArgs e)

{

//Only for testing purpose.

string teststring = "oi";

Response.Write(teststring);

}
.......

.......

.....

I''am i doing something wrong?

Thanks...

推荐答案

bredal Jensen< br ****** @ jensen.dk>写道:


< snip>
bredal Jensen <br******@jensen.dk> wrote:

<snip>
我做错了什么?



是:


rb.CheckedChanged + = new MyOwnEventHandler(DoSomething);


你必须使用这种类型事件,即EventHandler:


rb.CheckedChanged + = new EventHandler(DoSomething);

-

Jon Skeet - < sk *** @ pobox.com>
http:// www .pobox.com / ~siget

如果回复小组,请不要给我发邮件



Yes:

rb.CheckedChanged+=new MyOwnEventHandler( DoSomething );

You''ve got to use the type of the event, namely EventHandler:

rb.CheckedChanged += new EventHandler (DoSomething);
--
Jon Skeet - <sk***@pobox.com>
http://www.pobox.com/~skeet
If replying to the group, please do not mail me too


bredal Jensen< br******@jensen.dk>写道:


< snip>
bredal Jensen <br******@jensen.dk> wrote:

<snip>
我做错了什么?



是:


rb.CheckedChanged + = new MyOwnEventHandler(DoSomething);


你必须使用这种类型事件,即EventHandler:


rb.CheckedChanged + = new EventHandler(DoSomething);

-

Jon Skeet - < sk *** @ pobox.com>
http:// www .pobox.com / ~siget

如果回复小组,请不要给我发邮件



Yes:

rb.CheckedChanged+=new MyOwnEventHandler( DoSomething );

You''ve got to use the type of the event, namely EventHandler:

rb.CheckedChanged += new EventHandler (DoSomething);
--
Jon Skeet - <sk***@pobox.com>
http://www.pobox.com/~skeet
If replying to the group, please do not mail me too


这是否意味着,这里没有代表吗?并且唯一的代码

i需要如下?

RadioButton rb = new RadioButton();


if (RadioMeetMycodnition)


{


rb.AutoPostBack = true;


rb.CheckedChanged + =新的EventHandler(DoSomething);


}


public voidDoSomething(object sender,EventArgs e)


{


//仅用于测试目的。


string teststring =" oi";


Response.Write(teststring);


}


" Jon Skeet [C#MVP]" < SK *** @ pobox.com>在消息中写道

新闻:MP ************************ @ msnews.microsoft.c om ...
Well does this mean, there is no need for delegates here? and the only code
i need is the following?

RadioButton rb = new RadioButton();

if (RadioMeetMycodnition)

{

rb.AutoPostBack = true;

rb.CheckedChanged+=new EventHandler ( DoSomething );

}

public voidDoSomething (object sender, EventArgs e)

{

//Only for testing purpose.

string teststring = "oi";

Response.Write(teststring);

}

"Jon Skeet [C# MVP]" <sk***@pobox.com> wrote in message
news:MP************************@msnews.microsoft.c om...
bredal Jensen< br ****** @ jensen.dk>写道:

< snip>
bredal Jensen <br******@jensen.dk> wrote:

<snip>
我做错了什么?



是的:

rb.CheckedChanged + = new MyOwnEventHandler(DoSomething);

你必须使用事件的类型,即EventHandler:

rb .CheckedChanged + = new EventHandler(DoSomething);

-
Jon Skeet - < sk *** @ pobox.com>
http://www.pobox.com/~skeet
如果回复该群组,请不要也寄给我



Yes:

rb.CheckedChanged+=new MyOwnEventHandler( DoSomething );

You''ve got to use the type of the event, namely EventHandler:

rb.CheckedChanged += new EventHandler (DoSomething);
--
Jon Skeet - <sk***@pobox.com>
http://www.pobox.com/~skeet
If replying to the group, please do not mail me too



这篇关于活动和代表......的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆