如何从事件中使用Sender? [英] How to use Sender to from event?
本文介绍了如何从事件中使用Sender?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
你好,
我在我的Windows Phone应用程序中有这样的东西:
< pre lang =c#> string mhm = 测试跨度>;
TextBlock K = new TextBlock();
K.Name = ID;
K.FontSize = 22 ;
K.Text = mhm;
K.Tap + = MyClick;
和
private void MyClick( object sender,GestureEventArgs e)
{
// 如何获取字符串来自发件人的元素mhm(测试)?
} 解决方案你必须施放
sender
到它的真实类或它实现的使用方法和属性的接口之一。
这是一种方法这样做:
私人 无效 MyClick ( object sender,GestureEventArgs e)
{
TextBlock txt = sender as TextBlock ;
if (txt == null )
{
throw new ArgumentException( MyClick需要第一个参数为TextBlock);
}
string whatEver = txt.Text;
}
您需要使用原始控件转发发件人
TextBlock txtBlock = sender as TextBlock;
谢谢,
Rachit
http://agarwalrachit.blogspot.in/ [ ^ ]
请尝试此代码。
私人 void MyClick(对象发件人,GestureEventArgs e)
{
TextBlock txtBlk = new TextBlock();
txtBlk(TextBlock)sender;
String txtBlkText = txtBlk.Text;
}
谢谢,
Bilaal
Hi there,
I have in my Windows Phone application something like that:
string mhm= "Test";
TextBlock K = new TextBlock();
K.Name = "ID";
K.FontSize = 22;
K.Text = mhm;
K.Tap += MyClick;
and
private void MyClick(object sender, GestureEventArgs e)
{
// How to get string from element mhm ("Test") from sender?
}
解决方案
You have to castsender
to its real class or one of the interfaces it implements to use methods and properties.
Here is one way to do it:
private void MyClick(object sender, GestureEventArgs e) { TextBlock txt = sender as TextBlock; if( txt == null ) { throw new ArgumentException("MyClick needs first parameter to be a TextBlock"); } string whatEver = txt.Text; }
You need to cast the sender with your original control
TextBlock txtBlock = sender as TextBlock;
Thanks,
Rachit
http://agarwalrachit.blogspot.in/[^]
Please try this code.
private void MyClick(object sender, GestureEventArgs e) { TextBlock txtBlk = new TextBlock(); txtBlk (TextBlock )sender; String txtBlkText = txtBlk.Text; }
Thanks,
Bilaal
这篇关于如何从事件中使用Sender?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文