C# 如何在运行时将值存储在按钮中?

C# 如何在运行时将值存储在按钮中?,c#,wpf,button,C#,Wpf,Button,我有一个问题,我有一些动态按钮。我想在其中存储整数值 在那个按钮的点击事件中得到那个值,我怎样才能实现呢 提前谢谢 沙申克 DataView dv = new DataView(dtCat, "PK_CATEGORY_ID IN(" + categoryIds.ToString() + "0)", "PK_CATEGORY_ID", DataViewRowState.CurrentRows); foreach (DataRowView rr in dv) { //MessageBox.

我有一个问题,我有一些动态按钮。我想在其中存储整数值

在那个按钮的点击事件中得到那个值,我怎样才能实现呢

提前谢谢 沙申克

DataView dv = new DataView(dtCat, "PK_CATEGORY_ID IN(" + categoryIds.ToString() + "0)", "PK_CATEGORY_ID", DataViewRowState.CurrentRows);

foreach (DataRowView rr in dv)
{
    //MessageBox.Show(rr[0].ToString() + "------------" + rr[1].ToString());

    Button b2 = new Button();

    //b2.Name = rr[0].ToString();
    b2.Name = "";
    b2.Height = 200;
    b2.Width = 200;
    b2.Margin = new Thickness(0, -100, 0, 0);
    b2.HorizontalAlignment = HorizontalAlignment.Left;
    b2.Content = rr[1].ToString();
    b2.Background = System.Windows.Media.Brushes.Pink;
    b2.Click += new RoutedEventHandler(b2_Click);
    btncanvas.Children.Add(b2);
    Canvas.SetLeft(b2, b2.Width * i);
    i = i + 1;
    MessageBox.Show(rr[0].ToString());
    b2.Tag = rr[0].ToString();

}


void b2_Click(object sender, RoutedEventArgs e)
{
    Button clicked = (Button)sender;

    categoryname = clicked.Name;
}
这房子可能就是你想要的

您已经在示例中使用了它,但只有:

b2.Tag = integerValue;
然后在单击处理程序中,使用方法返回整数值:

int retrievedValue = Convert.ToInt32(clicked.Tag);

@沙申克-我已经更正了密码。我在没有访问Visual Studio的情况下键入;)