У меня есть следующий код в пользовательском элементе управления, который содержит DropDownList с именем ddlAggerationUnitId. DropDownList - это DataBind'd для события Page_Load (). «Значение» установлено равным 40, и оно существует. Если я уберу логику для заданного метода, страница загрузится и выберет правильный элемент, но если значение является поддельным, страница выдаст исключение. Я хотел бы избежать этого исключения, посмотрев, существует ли значение ДО того, как пытаться его установить, поэтому и необходима логика.
Сейчас похоже, что компилятор оценивает оператор if как ложный, хотя я точно знаю, что это должно быть правдой.
public long? Value
{
get { return Int64.Parse(ddlAggerationUnitId.SelectedItem.Value); }
set
{
if (ddlAggerationUnitId.Items.FindByValue(value.ToString()) != null)
{
ddlAggerationUnitId.SelectedValue = value.ToString();
}
}
}
Любая помощь будет принята с благодарностью! Спасибо!
РЕДАКТИРОВАТЬ: Вот мое событие Page_Load ():
protected void Page_Load(object sender, EventArgs e)
{
ddlAggerationUnitId.DataSource = ExternalAccount.GetAggregationUnits();
ddlAggerationUnitId.DataTextField = "Value";
ddlAggerationUnitId.DataValueField = "Key";
ddlAggerationUnitId.DataBind();
}