2010-06-21 2 views
1

Привет друзья У меня есть элемент управления списком в моем проекте asp.net. Я хочу знать, как получить выбранный индекс, чтобы установить текущий обновленный элемент в базе данных. Пожалуйста, помогите мне с этим. Нужно ли мне выполнять некоторую операцию с базой данных, чтобы найти ключ для обновленных данных, и тогда мне нужно будет установить его или есть какое-то свойство, чтобы справиться с этим? Спасибо в adavancelist box control in asp.net

+0

Hi Rupesh. Можете ли вы предоставить дополнительную информацию? Есть ли поле базы данных для элемента, который сообщает, какой из них, если текущий обновленный элемент? –

+0

private void CompanyListBox() { Компания DataTableTbl; companyTbl = companyManager.GetCompanylist(); listCompany.DataSource = companyTbl; listCompany.DataTextField = CompanyEnum.comapnyColumn.company_name.ToString(); listCompany.DataValueField = CompanyEnum.comapnyColumn.company_id.ToString(); listCompany.DataBind(); listCompany.Items.Insert (0, новый ListItem ("- Выберите компанию--", "0")); listCompany.SelectedIndex = 0; } это окно списка – NoviceToDotNet

+0

Я хочу, чтобы выбранный индекс устанавливал текущий обновленный элемент ... – NoviceToDotNet

ответ

0

Отметим, что если вы вызовете свой метод CompanyListBox() в методе Page_Load, то вы потеряете выбранный индекс, если только он вызывается только на загрузка первой страницы. Чтобы убедиться в этом, поместите вызов CompanyListBox() в следующем блоке:

 if(!Page.IsPostBack) 
     { 
      CompanyListBox(); 
     } 

Вы можете получить доступ к выбранному индексу в вашем постбэка, используя следующий код:

var id = (Int32)listCompany.SelectedItem.Value 

Тогда до вас, чтобы использовать это в вашем доступе к данным для обновления записи в базе данных. Полагаю, что для доступа к базе данных вы используете какой-то каркас или класс менеджера. КомпанияManager должна иметь методы для сохранения обновленного элемента в базе данных. Удачи.