ページにインフラジスティックス webdatagrid があり、そのページの上に、ページを更新するためのボタンとグリッドからデータを保存するためのボタンの 2 つの webdatamenu があります。私がやっているのはデイスケジューラです。ここに私のウェブデータグリッドがあります..
<ig:WebDataGrid ID="WebDataGridPlaneamentoHorarios" Visible="false" runat="server" Height="500px"
AutoGenerateColumns="False" Width="1300px" BorderColor="#666666"
ShowFooter="True" EnableDataViewState="True" >
<Columns>
<ig:BoundDataField DataFieldName="Numero" Key="Numero" Width="100px" Hidden="false">
<Header Text="Número" />
</ig:BoundDataField>
<ig:BoundDataField DataFieldName="Nome" Key="Nome" Width="100px">
<Header Text="Nome" />
</ig:BoundDataField>
<ig:BoundDataField DataFieldName="Descricao" Key="Descricao" Width="150px" Hidden="false">
<Header Text="Profissão" />
<Footer TemplateId="footerTemplate" />
</ig:BoundDataField>
<ig:TemplateDataField Key="Segmentos" Width="1510px" Hidden="False">
<ItemTemplate>
<uc1:Segmento ID="Segmento1" runat="server" />
</ItemTemplate>
<HeaderTemplate >
<uc5:HeaderControl ID="SegHed" runat="server"/>
</HeaderTemplate>
<FooterTemplate >
<div id="Quant" runat="server"> <uc2:SegNecessidades ID="SegNecessidades" runat="server" /></div>
<br /><br /> <div id="Totais" runat="server"><uc2:SegNecessidades ID="SegNecessidades2" runat="server" /></div>
<br /><br />
</FooterTemplate>
</ig:TemplateDataField>
<ig:BoundDataField DataFieldName="IDProfissao" Width="50px" Hidden="true" Key="IDProfissao">
<Header Text="IDProfissão" />
</ig:BoundDataField>
</Columns>
<Templates>
<ig:ItemTemplate ID="WebDataGridPlaneamentoHorariosTemplate2" runat="server"
TemplateID="footerTemplate">
<Template >
<uc3:FooterControl ID="FooterC" runat="server" />
</Template>
</ig:ItemTemplate>
</Templates>
</ig:WebDataGrid>
すべてが正常に機能しており、更新時にデータがロードされます...問題は、変更を保存しようとするときです...
protected void WebDataMenuOptions_ItemClick(object sender, Infragistics.Web.UI.NavigationControls.DataMenuItemEventArgs e)
{
if (e.Item.Key == "btnRefrescar")
{
foreach (GridRecord row in WebDataGridPlaneamentoHorarios.Rows)
{
GridRecordItem itm = row.Items[3];
string id = row.Items[0].Text;
Control control = itm.FindControl("Segmento1");
DataTable DTblHorarioById = dbcHorariosEscalas.GetHorarioById(id, dt);
Segmentos seg = (Segmentos)control;
seg.AddSegmento(id, DTblHorarioById);
//this is to load the schedule of the user,,,,
}
}
else if(e.Item.Key == "btnGuardar")
{
foreach (GridRecord row in WebDataGridPlaneamentoHorarios.Rows)
{
GridRecordItem itm = row.Items[3];
string id = row.Items[0].Text;
Control control = itm.FindControl("Segmento1");
}
}
}
したがって、コードは両方のボタンで同じです。4列にあるSegmento1というユーザーコントロールを見つけようとしています...更新ボタンを押すとコードが機能し、ユーザーコントロールが見つかりますが、押すとボタン保存、コントロールがnullです...問題は何ですか...昨日は機能していたのに、今日は停止したため、これに夢中です。彼が望んでいるという理由だけで働くのをやめる..