首先让我告诉你,我想要实现什么。我希望当一个 Windows 页面加载时它会创建很多按钮,比如现在在运行时有 10 个按钮我希望它Button.Content
与一些列表值绑定,这是一个 10 个数字的列表。
public List<int> listvalues = new list<int>();
我想在 MVVM 中执行此操作,所以我的方法是在我拥有public int ListNumbers
属性的模型中,并OnPropertyChanged
定义了事件。现在在视图模型中,我如何listvalues
用大约 10 个整数值填充一个列表(这对 MVVM 来说是全新的,这就是我要问的原因)。这十个值将用于运行时生成的 10 个按钮的内容。在填写MainPagelistvalues
的MainPage_Loaded
Method 后,如何将 Button 的 Content 与listvalues
.
为了更好地理解我的要求...
我有以下 XAMl 代码
<Canvas x:Name="GameCanvas" Background="Bisque" Height="480" Width="480" />
在MainPage.xaml
所以在后面的代码中
int locationFirst = 25;
int locationSecond = 100;
char SeatValue = 'A';
int row = 3;
int column = 3;
public GamePage()
{
InitializeComponent();
for (int x = 1; x <= row; x++)
{
for (int i = 1; i <= column; i++)
{
CreateButtons(SeatValue.ToString() + i, locationFirst, locationSecond);
locationFirst = locationFirst + 130;
}
locationFirst = 25;
locationSecond = locationSecond + 50;
}
}
createButtons 代码是
Button btnNew = new Button();
btnNew.Name = btnName;
btnNew.Margin = new Thickness(btnPointFirst, btnPointSecond, 0, 0);
btnNew.Width = 100;
btnNew.Height = 70;
GameCanvas.Children.Add(btnNew);
在 Windows Phone 中我发现了一个问题,就是没有 btnNew.Location(X,Y);
所以在运行时我必须使用
btnNew.Margin = new Thickness(btnPointFirst, btnPointSecond, 0, 0);
哪个没有将按钮放在所需的位置。但是,这是我的代码,现在如何为 btnNew.Content 分配listNumbers
值?
请帮忙。
任何链接或任何详细的答案对我来说都很好......
谢谢