【问题标题】:How to give unique id for each button如何为每个按钮提供唯一的 id
【发布时间】:2020-06-13 09:36:17
【问题描述】:

我有由循环创建的按钮,每个按钮都对应一张桌子,所以当我点击一个按钮时,我必须设计特定的数据库行

我如何添加按钮:

for (int i = 1; i < terasmasasayisi; i++)
    {
        var buttonteras = new Button
        {
            Text = i.ToString(),
            HeightRequest = 45,
            WidthRequest = 45,
            Margin = 5,
            BorderRadius = 100,
        };``

        teras.Children.Add(button);
    }

如果我可以设置表号和 i(desknumber) 之间的关系,我可以根据我的数据库中的 id 来做到这一点。

我很困惑

【问题讨论】:

  • 每个按钮已经有一个唯一的文本值,使用它
  • 否,单击按钮后会显示一个新页面,然后我必须对数据库进行更改
  • 你解释得不好。它只需要是一个唯一的随机值,还是需要与数据库中的某个现有值相对应? Button1 与 ButtonX 有何不同?
  • 按钮 1 和按钮 2 会做同样的事情,但在不同的行上
  • 如果你不回答我的问题,我帮不了你。这里没有足够的信息来解释你在做什么或你被困在哪里。如果您不添加更多信息,它将被关闭。

标签: xamarin xamarin.forms xamarin.android xamarin.ios


【解决方案1】:

创建自定义按钮

public class MyIDButton : Button
{
    public static readonly BindableProperty ButtonIDProperty = BindableProperty.Create(nameof(ButtonId), typeof(int), typeof(MyIDButton), 999);

    public int ButtonId
    {
       get => (int)GetValue(ButtonIDProperty);
       set => SetValue(ButtonIDProperty, value);
    }
}

然后像这样使用它

var buttonteras = new MyIDButton 
        {
            Text = i.ToString(),
            HeightRequest = 45,
            WidthRequest = 45,
            Margin = 5,
            ButtonId = 1, //whatever your value
            BorderRadius = 100,
        };

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-02-16
    • 1970-01-01
    • 1970-01-01
    • 2015-07-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多