【发布时间】:2014-08-13 18:00:46
【问题描述】:
我正在研究silverlight,我创建了一个单选按钮,我想以编程方式手动设置单选按钮检查单选按钮上给定的3个项目(itms表示3个单选按钮)。我试过这样
RadioButton radio = new RadioButton();
假设这个单选按钮包含“项目(单选按钮),当我尝试下面的代码来检查第二个项目(共 3 个项目)时,下面的代码会检查最后一个项目。
radio.Loaded += (p, q) =>
{
radio.IsChecked = true;
};
我如何创建按钮是:
foreach (String item in param.Component.Attributes[0].Item)
{
radio = new RadioButton()
{
Content = item,
GroupName = "MyRadioButtonGroup",
Tag = tg
};
radio.Checked += (o, e) =>
{
//Do something
};
sp.Children.Add(radio);
count++; tg++;
}
为什么要检查最后一项?如何在 c# 代码中使用 silverlight 以编程方式检查第二项? 我尝试这样做是因为我想在程序启动后(在单击按钮之前)初始化单选按钮,因为在单击单选按钮之前,如果我尝试在文本块上打印项目,我什么也看不到(它只显示在按钮上点击,但我希望在点击之前显示一些东西而不是空白)
【问题讨论】:
-
除非我弄错了(在这种情况下 - 我很抱歉),否则您将需要进行回发,以便单选按钮在视觉上发生变化,因为您在“IsChecked”值已经更改之后初始化。 PS.:如果你愿意使用它,通过 jQuery 来做会更简单。
-
@EvilBeer 请查看我为什么尝试这样做的编辑。
-
您是否允许/愿意使用 jQuery/Javascript?
-
您是在代码中还是在 XAML 中创建单选按钮?
-
@EvilBeer 没有什么像 Java ..只有 C#。
标签: c# .net silverlight radio-button ischecked