for (i = 0; i < items.length; i++)
{
items[i].get_cell("ClientSelectColumn").disabled = true;
}
<
telerik:RadGrid ID="RadGrid1" DataSourceID="SqlDataSource1" Width="97%" ShowStatusBar="True" AllowSorting="True" PageSize="14" GridLines="None" AllowPaging="True" runat="server" AllowAutomaticUpdates="True" AutoGenerateColumns="False" OnItemDataBound="RadGrid1_ItemDataBound">
<MasterTableView TableLayout="Fixed" DataKeyNames="nusuario" EditMode="InPlace">
<Columns>
<telerik:GridBoundColumn UniqueName="nusuario" DataField="nusuario" HeaderText="Nusuario" ReadOnly="True" />
<telerik:GridBoundColumn UniqueName="nombre" DataField="nombre" HeaderText="Nombre" />
<telerik:GridDropDownColumn UniqueName="tipo" HeaderText="Tipo" DataField="tipo" ListTextField="tipo" ListValueField="tipo" DataSourceID="SqlDataSource1" DropDownControlType="RadComboBox" />
</Columns>
</MasterTableView>
<ClientSettings>
<ClientEvents OnRowClick="RowClick" OnRowDblClick="RowDblClick" OnGridCreated="GridCreated" OnCommand="GridCommand" />
</ClientSettings>
</telerik:RadGrid>
<br />
<asp:Label ID="Label1" runat="server" EnableViewState="false" />
<br />
<asp:SqlDataSource ID="SqlDataSource1" runat="server" />
Code
protected void Page_Load(object sender, EventArgs e)
{
SqlDataSource1.ConnectionString = Dynamic.Common.
DConfig.ConnectionString;
SqlDataSource1.SelectCommand =
"SELECT * from usuarios order by nusuario";
/*
if (DConfig.SelCodNac) AddColumn("codnac");
if (DConfig.SelCodArea) AddColumn("codarea");
if (DConfig.SelCodDel) AddColumn("coddel");
if (DConfig.SelCodMonitor) AddColumn("codmonitor");
*/
//Update
string sql = string.Empty;
foreach (GridColumn column in RadGrid1.MasterTableView.Columns)
{
if (sql != string.Empty) sql += ",";
sql += column.UniqueName +
"=@" + column.UniqueName;
SqlDataSource1.UpdateParameters.Add(column.UniqueName,
string.Empty);
}
SqlDataSource1.UpdateCommand =
"UPDATE usuarios SET " +sql +" WHERE nusuario=@nusuario";
}
protected void RadGrid1_ItemUpdated(object source, Telerik.Web.UI.GridUpdatedEventArgs e)
{
if (e.Exception != null){
e.KeepInEditMode =
true;
e.ExceptionHandled =
true;
SetMessage(Server.HtmlEncode(
"Error al actualizar: " + e.Exception.Message).Replace("'", "'").Replace("\r\n", "<br />"));
}
else{
GridDataItem dataItem = (GridDataItem)e.Item;
SetMessage(
" Nusuario " + dataItem.GetDataKeyValue("nusuario") + " updated");
}
}
private void DisplayMessage(string text)
{
Label1.Text =
string.Format("<span>{0}</span>", text);
}
private void SetMessage(string message)
{
gridMessage = message;
}
protected void RadGrid1_DataBound(object sender, EventArgs e)
{
if (!string.IsNullOrEmpty(gridMessage)) DisplayMessage(gridMessage);
}
protected void AddColumn(string campo)
{
//GridBoundColumn
GridDropDownColumn boundColumn = new GridDropDownColumn();
boundColumn.UniqueName = campo;
boundColumn.HeaderText = campo.Substring(0, 1).ToUpper() + campo.Substring(1);
boundColumn.DataField = campo;
boundColumn.ListTextField=campo;
boundColumn.ListValueField=campo;
boundColumn.DataSourceID =
"SqlDataSource1";
RadGrid1.MasterTableView.Columns.Add(boundColumn);
}
protected void RadGrid1_ItemDataBound(object sender, Telerik.Web.UI.GridItemEventArgs e)
{
if (e.Item is GridEditableItem && (e.Item as GridEditableItem).IsInEditMode)
{
/*
GridEditFormItem editform = (GridEditFormItem)e.Item;
DropDownList ddl = (DropDownList)editform.FindControl("ddl");
ddl.Items.Add("foo");
ddl.Items.Add("bar");
*/
}
}
<
telerik:RadGrid
ID
=
"EcsSupplierAgreementsGrid"
runat
=
"server"
AutoGenerateColumns
=
"false"
OnNeedDataSource
=
"EcsSupplierAgreementsGrid_NeedDataSource"
GridLines
=
"None"
>
<
MasterTableView
Width
=
"100%"
>
<
ItemTemplate
>
<%# Eval("SupplierCode")%>
</
ItemTemplate
>
</
MasterTableView
>
</
telerik:RadGrid
>
protected
void
EcsSupplierAgreementsGrid_NeedDataSource(
object
sender, GridNeedDataSourceEventArgs e)
{
EcsSupplierAgreementsGrid.DataSource = _agreement.SupplierAgreements;
}