c# winform 比如说一个窗体中有很多个button ,当鼠标在窗体中点击的时候如何得到这个button的id

c# winform 比如说一个窗体中有很多个button ,当鼠标在窗体中点击的时候如何得到这个button的id,第1张

//以下代码,在Form1_Load中,为所有按钮添加事件,点击后显示此按钮的id

private void Form1_Load(object sender, EventArgs e)

{

foreach (Control c in thisControls)

{

try

{

Button b = c as Button;

bClick += new EventHandler(b_Click);

}

catch

{ }

}

}

void b_Click(object sender, EventArgs e)

{

Button b = sender as Button;

MessageBoxShow(bName);

}

1、新建一个html文件,命名为testhtml。

2、在testhtml文件中,使用script标签加载jqueryminjs文件,成功加载该文件,才能使用jquery方法。

3、在js标签内,在页面加载完成时,获取body对象,使用append()方法向body动态添加一个div元素。

4、在testhtml文件中,使用button标签创建一个按钮,按钮名称为“获取id值”。

5、在testhtml文件中,给button按钮绑定onclick点击事件,当按钮被点击时,执行getid()函数。

6、在js标签内,创建getid()函数,在函数内,通过元素名称获得div对象,使用attr()方法获得动态添加div的id值,并使用alert()方法将值输出。

7、在浏览器打开testhtml文件,点击按钮,查看结果。

其实ctl00_main_DCButton1是正确的,在网页源代码里面就可以查找的到,反而你查找DCButton1是查找不到的。这样命名的好处是为了避免ID的冲突,以及更清晰的定位控件。

试想页面中有两个GridView控件,每个GridView都有一个叫做Button1的按钮,如果我们

不采用上面的命名方式的话,那么这个页面中就同时存在两个ID为Button1的按钮,那么

这就违背了ID标识唯一对象的原则。

16032就是登录按钮的ID号,这个ID号也可以用Spy++获得到。

在Spy++的Windows窗口里找到“QQ登录窗口”展开找到“登录”Button(可能有两个要找对),右键看属性(Properties),在General页面就可以看到Control ID值了,不过这个值是16进制的,使用时要加0x,或者把它转化为10进制

最简单的做法是使用 CommandArgument

aspx

<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False"

DataKeyNames="Id" onrowcommand="GridView1_RowCommand">

<Columns>

<asp:TemplateField ShowHeader="False">

<ItemTemplate>

<asp:Button ID="Button1" runat="server" CausesValidation="False"

CommandArgument='<%# Eval("Id") %>' Text="确定" CommandName="OK" />

</ItemTemplate>

</asp:TemplateField>

</Columns>

</asp:GridView>

aspxcs

protected void GridView1_RowCommand(object sender, SystemWebUIWebControlsGridViewCommandEventArgs e)

{

if (eCommandName == "OK")

{

//eCommandArgumentToString()

}

}

在click事件中,都有两个参数,其中(object sender,EventArgs e)中的sender就是当前触发的按钮,可以通过(sender as Button)Name获得name,text获得文本,此时的对象就是一个Button可以取得相关的全部属性值,你可以试一下,net的全面知识,可以关注下最课程net,有助于全面了解。

一般获取网页元素的属性,是用JS实现的,写了个DEMO,你看一下:

<input type="button" value="button" id="btn" name="test" onclick="getInfo(this);" />

<script type="text/javascript">

function getInfo(eles){

alert("按钮的 id: "+elesid+", name: "+elesname);

}

</script>

你试试

以上就是关于c# winform 比如说一个窗体中有很多个button ,当鼠标在窗体中点击的时候如何得到这个button的id全部的内容,包括:c# winform 比如说一个窗体中有很多个button ,当鼠标在窗体中点击的时候如何得到这个button的id、js如何获取动态的id、asp.net(C#)怎样准确知道Button按钮的id等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/9738668.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-01
下一篇2023-05-01

发表评论

登录后才能评论

评论列表(0条)

    保存