if (e.Item.IsInEditMode)
{
GridEditableItem item = (GridEditableItem)e.Item;
if (!(e.Item is IGridInsertItem))
{
//this area is for update
using (dl = new WellVentDataLayer())
{
//For the Area section
RadComboBox combo = (RadComboBox)item.FindControl("RadComboBoxArea");
RadComboBoxItem selectedItem = new RadComboBoxItem();
selectedItem.Text = ((DataRowView)e.Item.DataItem)["AreaName"].ToString();
combo.Items.Add(selectedItem);
selectedItem.DataBind();
}
}
}
and the following aspx code
<telerik:GridTemplateColumn UniqueName="AreaName" HeaderText="Area"
SortExpression="AreaName" ItemStyle-Width="150px" DataField="_AreaName"
AndCurrentFilterFunction="Contains">
<FooterTemplate>
Template footer
</FooterTemplate>
<FooterStyle VerticalAlign="Middle" HorizontalAlign="Center" />
<ItemTemplate>
<%
#DataBinder.Eval(Container.DataItem, "_AreaName")%>
</ItemTemplate>
<EditItemTemplate>
<telerik:RadComboBox runat="server" ID="RadComboBoxArea" EnableLoadOnDemand="True" DataTextField="AreaName" OnItemsRequested="RadComboBoxArea_ItemsRequested" DataValueField="ID" AutoPostBack="true" HighlightTemplatedItems="true" Height="140px" Width="100px" DropDownWidth="200px"
OnSelectedIndexChanged="ComboBox1_OnSelectedIndexChangedHandler">
<ItemTemplate>
<%# DataBinder.Eval(Container, "Text")%>
</ItemTemplate>
</telerik:RadComboBox>
</EditItemTemplate>
<HeaderStyle Width="100px" />
<ItemStyle Width="100px"></ItemStyle>
</telerik:GridTemplateColumn>
the code gave the following error on the row
Unable to cast object of type 'GHG_MCA.WellVentEvents' to type 'System.Data.DataRowView'.
selectedItem.Text = ((DataRowView)e.Item.DataItem)["AreaName"].ToString();
thanks,
Minh Bui
Dim pctStyle As New Telerik.Web.UI.GridExcelBuilder.StyleElement("PctStyle") pctStyle.AlignmentElement.HorizontalAlignment = GridExcelBuilder.HorizontalAlignmentType.Right pctStyle.NumberFormat.FormatType = GridExcelBuilder.NumberFormatType.GeneralNumber pctStyle.NumberFormat.Attributes("ss:Format") = "0.0"GridHeaderItem item = RadGrid1.MasterTableView.GetItems(GridItemType.Header)[0] as GridHeaderItem;<telerik:RadGrid ID="gvKontakti" runat="server" AllowPaging="True" AllowSorting="True" AutoGenerateColumns="False" CellSpacing="0" GridLines="None" OnUpdateCommand="gvKontakti_UpdateCommand" Skin="Default" onDeletecommand="gvKontakti_DeleteCommand" oninsertcommand="gvKontakti_InsertCommand"> <MasterTableView DataKeyNames="idKontakt" CommandItemDisplay="TopAndBottom"> <Columns> <telerik:GridEditCommandColumn UniqueName="EditCommandColumn"> </telerik:GridEditCommandColumn> <telerik:GridBoundColumn UniqueName="Kontakt" DataField="Naziv" HeaderText="Kontakt"> </telerik:GridBoundColumn> <telerik:GridBoundColumn UniqueName="Funkcija" HeaderText="Funkcija" DataField="Funkcija"> </telerik:GridBoundColumn> <telerik:GridBoundColumn UniqueName="Tel1" HeaderText="Telefon 1" DataField="Tel1"> </telerik:GridBoundColumn> <telerik:GridBoundColumn UniqueName="Tel2" HeaderText="Telefon 2" DataField="Tel2"> </telerik:GridBoundColumn> <telerik:GridBoundColumn UniqueName="Mob1" HeaderText="Mobitel 1" DataField="Mob1"> </telerik:GridBoundColumn> <telerik:GridBoundColumn UniqueName="Mob2" HeaderText="Mobitel 2" DataField="Mob2"> </telerik:GridBoundColumn> <telerik:GridBoundColumn UniqueName="Email1" HeaderText="E-mail 1" DataField="E-mail1"> </telerik:GridBoundColumn> <telerik:GridBoundColumn UniqueName="Email2" HeaderText="E-mail 2" DataField="E-mail2"> </telerik:GridBoundColumn> <telerik:GridBoundColumn UniqueName="Fax" HeaderText="Fax" DataField="Fax"> </telerik:GridBoundColumn> <telerik:GridButtonColumn ConfirmText="Obrisati ovog korisnika?" ConfirmDialogType="RadWindow" ConfirmTitle="Brisanje" ButtonType="ImageButton" CommandName="Delete" /> </Columns> <EditFormSettings EditFormType="Template"> <EditColumn UniqueName="EditColumn"> </EditColumn> <FormTemplate> <table> <tr> <td> Ime: </td> <td> <asp:TextBox ID="txtIme" runat="server" Text='<%# Bind("Ime") %>'></asp:TextBox> </td> <td> Prezime: </td> <td> <asp:TextBox ID="txtPrezime" runat="server" Text='<%# Bind("Prezime") %>'></asp:TextBox> </td> </tr> <tr> <td> Funkcija: </td> <td colspan="3"> <asp:TextBox ID="txtFunkcija" runat="server" Width="430px" Text='<%# Bind("Funkcija") %>'></asp:TextBox> </td> </tr> <tr> <td> Telefon 1: </td> <td> <asp:TextBox ID="txtTel1" runat="server" Text='<%# Bind("Tel1") %>'></asp:TextBox> </td> <td> Telefon 2: </td> <td> <asp:TextBox ID="txtTel2" runat="server" Text='<%# Bind("Tel2") %>'></asp:TextBox> </td> </tr> <tr> <td> Mobitel 1: </td> <td> <asp:TextBox ID="txtMob1" runat="server" Text='<%# Bind("Mob1") %>'></asp:TextBox> </td> <td> Mobitel 2: </td> <td> <asp:TextBox ID="txtMob2" runat="server" Text='<%# Bind("Mob2") %>'></asp:TextBox> </td> </tr> <tr> <td> Fax: </td> <td> <asp:TextBox ID="txtFax" runat="server" Text='<%# Bind("Fax") %>'></asp:TextBox> </td> </tr> <tr> <td> E-mail 1: </td> <td> <asp:TextBox ID="txtEmail1" runat="server" Text='<%# Bind("Email1") %>'></asp:TextBox> </td> <td> E-mail 2: </td> <td> <asp:TextBox ID="txtEmail2" runat="server" Text='<%# Bind("Email2") %>'></asp:TextBox> </td> </tr> <tr> <td> Adresa 1: </td> <td colspan="3"> <asp:TextBox ID="txtAdresa1" runat="server" Width="430px"></asp:TextBox> </td> </tr> <tr> <td> Adresa 2: </td> <td colspan="3"> <asp:TextBox ID="txtAdresa2" runat="server" Width="430px"></asp:TextBox> </td> </tr> <tr> <td> Adresa 3: </td> <td colspan="3"> <asp:TextBox ID="txtAdresa3" runat="server" Width="430px"></asp:TextBox> </td> </tr> <tr> <td> Grad: </td> <td> <asp:TextBox ID="txtGrad" runat="server"></asp:TextBox> </td> <td> Poštanski broj: </td> <td> <asp:TextBox ID="txtPBR" runat="server"></asp:TextBox> </td> </tr> <tr> <td> Država: </td> <td> <asp:TextBox ID="txtDrzava" runat="server"></asp:TextBox> </td> </tr> <tr> <td> Bilješke: </td> <td colspan="3"> <asp:TextBox ID="txtBiljeske" runat="server" Width="455px" Height="200px" TextMode="MultiLine"></asp:TextBox> </td> </tr> <tr> <td> Aktivan korisnik: </td> <td colspan="3"> <asp:CheckBox ID="chkAktivan" runat="server" Checked='<%# Bind("Aktivan") %>' /> </td> </tr> </table> <asp:Button ID="btnUpdate" CommandName="Update" Text="Update" runat="server" /> <asp:Button ID="btnDelete" CommandName="Delete" Text="Delete" runat="server" /> </FormTemplate> </EditFormSettings> </MasterTableView></telerik:RadGrid>protected void Page_Load(object sender, EventArgs e){ var kontakti = BindContacts(); gvKontakti.DataSource = kontakti; gvKontakti.DataBind();}public object BindContacts(){ TSEntities db = new TSEntities(); var kontakti = from k in db.Kontakts select new { k.idKontakt, Naziv = k.Ime + " " + k.Prezime, Funkcija = k.Funkcija, k.Ime, k.Prezime, k.Tel1, k.Tel2, k.Mob1, k.Mob2, k.Email1, k.Email2, k.Fax, k.Aktivan }; return kontakti;}protected void gvKontakti_UpdateCommand(object sender, Telerik.Web.UI.GridCommandEventArgs e){ TSEntities db = new TSEntities(); if (e.CommandName == RadGrid.UpdateCommandName) { if (e.Item is GridEditFormItem) { GridEditFormItem item = (GridEditFormItem)e.Item; int idKontakt = Convert.ToInt32(item.GetDataKeyValue("IdKontakt")); if (idKontakt > 0) { Kontakt kontakt = new Kontakt(); kontakt = db.Kontakts.SingleOrDefault(k => k.idKontakt == idKontakt); TextBox txtIme = (TextBox)item.FindControl("txtIme"); TextBox txtPrezime = (TextBox)item.FindControl("txtPrezime"); kontakt.Ime = txtIme.Text; kontakt.Prezime = txtPrezime.Text; db.SaveChanges(); gvKontakti.Rebind(); } } }}protected void gvKontakti_DeleteCommand(object sender, GridCommandEventArgs e){ TSEntities db = new TSEntities(); Kontakt kontakt = new Kontakt(); int idKontakt = (int)((GridDataItem)e.Item).GetDataKeyValue("IdKontakt"); kontakt = db.Kontakts.SingleOrDefault(k => k.idKontakt == idKontakt); if (kontakt != null) { db.Kontakts.DeleteObject(kontakt); try { db.SaveChanges(); } catch (System.Exception) { } }}protected void gvKontakti_InsertCommand(object sender, GridCommandEventArgs e){ TSEntities db = new TSEntities();}