从后面的代码中选择单选按钮

时间:2013-04-18 14:51:05

标签: asp.net radiobuttonlist

我的aspx页面上有一组三个RadioButtons

pageLoad我使用以下代码从代码后面设置默认值:

rbListAccess.Items.FindByText("Page1ScoreCard POC").Selected = true;
rbListMetricType.Items.FindByText("Non-Percentage").Selected = true;
rbListMetricInterval.Items.FindByText("Monthly").Selected = true;

这很好。

在编辑链接上,我从后端获取数据并使用获取的数据集中的数据列再次设置值但是它无法正常工作。未正确选择值。我无法理解这个问题。随机地正确设置一次或两次一组/两组:

rbListAccess.Items.FindByText(ds.Tables[0].Rows[0]["ToBeFilledBy"].ToString()).Selected = true;
rbListMetricType.Items.FindByText(ds.Tables[0].Rows[0]["MetricType"].ToString()).Selected=true;

rbListMetricInterval.Items.FindByText(ds.Tables[0].Rows[0]["MetricInterval"].ToString()).Selected = true;

请让我知道这个问题。

1 个答案:

答案 0 :(得分:1)

您可能希望在为其指定新值之前使用ClearSelection()方法清除选择。

rbListAccess.ClearSelection(); // add this for all your radiobuttons
rbListMetricType.ClearSelection();
rbListMetricType.ClearSelection();

rbListAccess.Items.FindByText(ds.Tables[0].Rows[0]["ToBeFilledBy"].ToString()).Selected = true;
rbListMetricType.Items.FindByText(ds.Tables[0].Rows[0]["MetricType"].ToString()).Selected=true;
rbListMetricInterval.Items.FindByText(ds.Tables[0].Rows[0]["MetricInterval"].ToString()).Selected = true;