Oct 25, 2011, 11:33 AM
How to set SelectedRow values in Gridpanel, Ext.Net C# ??
The following is my GridPanel codes :
But it doesn't work !!!
Could you please guide me ?
How can I change a value in a GridPanel's Cell with C# ?
protected void Row_Click(object sender, DirectEventArgs e)
{
string id = e.ExtraParams["id"];
if (string.IsNullOrEmpty(id))
return;
int messageID = int.Parse(id);
KMSServiceClient kmsServiceClient = new KMSServiceClient();
Messages messages = kmsServiceClient.GetMessageByID(messageID);
Window win = new Window
{
ID = "Window" + messages.Id,
Title = messages.Subject,
Height = 300,
Width = 400,
Padding = 5,
Html = messages.Body,
StyleSpec = "direction:rtl;",
Modal = true
};
win.Render(this.Form);
kmsServiceClient.SetMessageAsRead(messageID);
RowSelectionModel sm = this.GridPanel1.SelectionModel.Primary as RowSelectionModel;
sm.Set("record.data.Subject", "new");//For changing the Subject value **********
sm.UpdateSelection();//**********
}
<ext:Store ID="stoMaster" runat="server" OnRefreshData="gpMaster_RefreshData">
<Reader>
<ext:JsonReader IDProperty="Id">
<Fields>
<ext:RecordField Name="ID" Type="Int" />
<ext:RecordField Name="Subject" />
<ext:RecordField Name="Sender" />
<ext:RecordField Name="ReceiveDate" />
</Fields>
</ext:JsonReader>
</Reader>
</ext:Store>
<ext:GridPanel ID="GridPanel1" runat="server" Title="list of Messages" StripeRows="true"
AutoWidth="true" TrackMouseOver="true" Height="330" StoreID="stoMaster" AutoEncode="true">
<ColumnModel ID="ColumnModel1" runat="server">
<Columns>
<ext:Column ColumnID="ID" Header="ID" Width="50" DataIndex="ID" Resizable="false"
MenuDisabled="true" Fixed="true" Align="Right" />
<ext:Column ColumnID="Subject" Header="Subject" DataIndex="Subject" Align="Right"
Width="300">
</ext:Column>
<ext:Column Header="Sender" DataIndex="Sender" Width="100" Align="Right">
</ext:Column>
<ext:Column Header="Date" DataIndex="ReceiveDate" Align="Right" Width="100">
</ext:Column>
<ext:ImageCommandColumn Width="60" Align="Right" Css="text-align:center;" Sortable="false">
<Commands>
<ext:ImageCommand CommandName="Reply" Icon="ApplicationGo" Text="reply">
</ext:ImageCommand>
</Commands>
</ext:ImageCommandColumn>
<ext:ImageCommandColumn Width="60" Align="Right" Css="text-align:center;" Sortable="false">
<Commands>
<ext:ImageCommand CommandName="Show" Icon="ApplicationViewTile" Text="show">
</ext:ImageCommand>
</Commands>
</ext:ImageCommandColumn>
<ext:ImageCommandColumn Width="60" Align="Center" Css="text-align:center;" Sortable="false">
<Commands>
<ext:ImageCommand CommandName="Delete" Icon="Delete" Text="Delete">
</ext:ImageCommand>
</Commands>
</ext:ImageCommandColumn>
</Columns>
</ColumnModel>
<DirectEvents>
<Command OnEvent="Command">
<EventMask ShowMask="true"></EventMask>
<ExtraParams>
<ext:Parameter Name="id" Value="record.data.ID" Mode="Raw" />
<ext:Parameter Name="command" Value="command" Mode="Raw" />
</ExtraParams>
<Confirmation BeforeConfirm="if (command!='Delete') return false;" ConfirmRequest="true"
Message="Are u sure ?" Title="Attention" />
</Command>
</DirectEvents>
<SelectionModel>
<ext:RowSelectionModel ID="RowSelectionModel1" runat="server" SingleSelect="true">
<DirectEvents>
<RowSelect OnEvent="Row_Click">
<EventMask ShowMask="true"></EventMask>
<ExtraParams>
<ext:Parameter Name="id" Value="record.data.ID" Mode="Raw" />
</ExtraParams>
</RowSelect>
</DirectEvents>
</ext:RowSelectionModel>
</SelectionModel>
<BottomBar>
<ext:PagingToolbar ID="PagingToolBar1" runat="server" PageSize="10" StoreID="stoMaster"
EmptyMsg=" " DisplayMsg=" " BeforePageText="Page" Cls="LTR" />
</BottomBar>
</ext:GridPanel>
as you can see, I wanna change the SelctedRow's Subject Cell to `New`.But it doesn't work !!!
Could you please guide me ?
How can I change a value in a GridPanel's Cell with C# ?