как связать выпадающий список в gridview?

У меня есть gridview, в котором каждая строка содержит выпадающий список. Я хочу динамически связывать каждый раскрывающийся список. Может кто-нибудь сказать мне, как я могу это сделать. Заранее спасибо

    Если вы используете столбец шаблонов, вы можете связать выпадающее меню с разметкой, используя выражения привязки данных. Например,

         

    Выше предполагается, что ваши выпадающие данные постоянны по строкам. Если он меняется, вы можете использовать выражение привязки данных, такое как

      

    GetDropDownData будет защищенным методом в коде, который вернет данные (data.table, список, массив) для данной строки.

    Вы можете использовать событие GridView.RowDataBound (или событие RowCreated) в коде для заполнения раскрывающихся списков. Например,

      protected void GridView_RowDataBound(Object sender, GridViewRowEventArgs e) { if(e.Row.RowType == DataControlRowType.DataRow) { // Find the drop-down (say in 3rd column) var dd = e.Row.Cells[2].Controls[0] as DropDownList; if (null != dd) { // bind it } /* // In case of template fields, use FindControl dd = e.Row.Cells[2].FindControl("MyDD") as DropDownList; */ } } 

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

               

    Вот ваш gridview

                

    и ваше событие RowDataBound для gridview будет

      protected void GridView2_RowDataBound(object sender, GridViewRowEventArgs e) { string cities = "maxico,chennai,newdelhi,hongkong"; string [] arr = cities.Split(','); // Instead of string array it could be your data retrieved from database. if (e.Row.RowType == DataControlRowType.DataRow) { DropDownList ddl = (DropDownList)e.Row.FindControl("DrdDatabase"); foreach (string colName in arr ) ddl.Items.Add(new ListItem(colName)); } } 
     protected void gvSalesAppData_RowDataBound(Object sender, GridViewRowEventArgs e) { if (e.Row.RowType == DataControlRowType.DataRow) { DropDownList ddlCurrentPhase = (DropDownList)e.Row.FindControl("ddlCurrentPhase"); DropDownList ddlProductFamily = (DropDownList)e.Row.FindControl("ddlProductFamily"); DropDownList ddlProductGroup = (DropDownList)e.Row.FindControl("ddlProductGroup"); DropDownList ddlETProgramManager = (DropDownList)e.Row.FindControl("ddlETProgramManager"); DropDownList ddlPLMForTheProduct = (DropDownList)e.Row.FindControl("ddlPLMForTheProduct"); TrackingToolObj.BindCurrentPhases(ddlCurrentPhase); TrackingToolObj.BindCurrentPhases(ddlProductFamily); TrackingToolObj.BindProductGroups(ddlProductGroup); TrackingToolObj.GetEmployeesBasedOnRoleTypeId(ddlETProgramManager, (int)OSAEnums.RoleTypes.ProgramManager, false); TrackingToolObj.GetEmployeesBasedOnRoleTypeId(ddlPLMForTheProduct, (int)OSAEnums.RoleTypes.PLM, false); } } 

    Связывание GridView

    Ниже приведен код привязки элемента GridView с данными.

    C #

     protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { this.BindData(); } } private void BindData() { string query = "SELECT top 10 * FROM Customers"; SqlCommand cmd = new SqlCommand(query); gvCustomers.DataSource = GetData(cmd); gvCustomers.DataBind(); } private DataTable GetData(SqlCommand cmd) { string strConnString = ConfigurationManager.ConnectionStrings["conString"].ConnectionString; using (SqlConnection con = new SqlConnection(strConnString)) { using (SqlDataAdapter sda = new SqlDataAdapter()) { cmd.Connection = con; sda.SelectCommand = cmd; using (DataTable dt = new DataTable()) { sda.Fill(dt); return dt; } } } } 
    Interesting Posts

    Как изменить уровень регистрации maven для отображения только предупреждений и ошибок?

    Взаимная информация и совместная энтропия двух изображений – MATLAB

    как тестировать строку только для букв

    Издевательские методы локальных объектов области с Mockito

    Вложенные составные компоненты JSF, приводящие к исключению переполнения стека

    Как скрыть вывод команды в bash

    Попробуйте использовать Window.FEATURE_CUSTOM_TITLE, но получило исключение: вы не можете комбинировать собственные заголовки с другими функциями названия.

    Наследование с помощью UserControl в WPF

    Какой кодек внутри файла mkv?

    Как объявить отношения один к одному с использованием Entity Framework 4 Code First (POCO)

    Почему существует SIGPIPE?

    Как установить 7zip, чтобы я мог запускать его из терминала в OS X

    string.Format (), дающий «входная строка не в правильном формате»

    Как можно установить операционную систему при отсутствии средств установки?

    Как программно включить разрешения автозапуска и плавающего windows, Как найти, какой телефон необходимо использовать для автоматического запуска кода?

    Давайте будем гением компьютера.