私は、いくつかのチェックボックスとフッターを持つtelerikコントロールを使ってradgridを設計しました。radgrid thourghチェックボックスの選択でフッタを更新
<telerik:RadGrid ID="RadGridCustomers" runat="server"
AutoGenerateColumns="False" CellSpacing="0" GridLines="None"
Height="300px" ShowFooter="true">
<HeaderTemplate>
<asp:CheckBox ID="chkSelectAll" runat="server"
OnCheckedChanged="ToggleSelectedState" AutoPostBack="true" />
</HeaderTemplate>
<ItemTemplate>
<asp:CheckBox ID="CheckBoxSelectedCustomer" runat="server"
OnCheckedChanged="ToggleRowSelection"/>
</ItemTemplate>
<ItemStyle Width="25px" Wrap="true" />
<HeaderStyle Width="25px" />
</telerik:GridTemplateColumn>
<telerik:GridBoundColumn DataField="Customers_Id"
FilterControlAltText="Filter column column" HeaderText="Id"
UniqueName="column" Visible="true">
</telerik:GridBoundColumn>
<telerik:GridBoundColumn DataField="NominatedLoad"
FilterControlAltText="Filter column1 column" HeaderText="Nominated MW"
UniqueName="NominatedLoad" Aggregate="Sum">
<HeaderStyle Wrap="true" Width="75px" HorizontalAlign="Center" />
<ItemStyle Width="75px" />
</telerik:GridBoundColumn>
だからわかるように、私はID、名前(ここにコードを入れなかった、不要だと思った)、指名されたフィールドを持っています。ノミネートされたフィールドには集約属性があります。デフォルトでは、グリッド内のすべてのチェックボックスをオンにしてグリッドを読み込みます。さて、問題は、ユーザーがチェックボックスのチェックを外すたびに、フッターの値を自動的に更新する必要があることです。だから、私はこのイベントに
protected void ToggleRowSelection(object sender, EventArgs e)
{
((sender as CheckBox).NamingContainer as GridItem).Selected = (sender as
CheckBox).Checked;
GridFooterItem footer = (GridFooterItem)
RadGridCustomers.MasterTableView.GetItems(GridItemType.Footer)[2];
int totalLoad = Convert.ToInt32(footer["ActualLoad"].Text.Split(':')[1]);
CheckBox chk = FindControl("CheckBoxSelectedCustomer") as CheckBox;
foreach (GridDataItem data in RadGridCustomers.MasterTableView.Items)
{
if (chk.Checked == true)
{
//footer["ActualLoad"].Text = footer.Attributes.Add('Aggregate', }
}
を書き始めたが、ブロックはあなたが私がこれを終了する方法を教えてくださいrow.canフッターを更新する方法を知らない場合、私は一種の一番下に打たれました。
また、親切に私はこのような状況はjqueryのを使用してやC#で行わ戸部を必要とするかどうかを知っている?(私はTE最良の方法を意味する)
MontMIとは何ですか? –