İki ReorderList
Biri ebeveyn, diğeri onun çocuğudur var. Geride kod üzerinden dinamik SqlDataSource
ait ConnectionString
özelliğini değiştirmek istiyorum ama ben bile OnItemDataBound
çalıştı ve onun özelliğini kontrolünü bulup değiştirmeye çalışmış ama yapamadı Çocuk ReorderList
ait ConnectionString
özelliğini değiştiremiyorum.SqlDataSource'ın ConnectionString özelliğini Code by Child ReorderList öğesinde nasıl değiştirebilirim?
<div class="reorderListDemo" style="width: 100%">
<cc1:ReorderList ID="ReorderList1" runat="server" DataSourceID="SqlDataSource1" DataKeyField="RecordingFilterId" AllowReorder="true"
SortOrderField="Priority" PostBackOnReorder="False">
<ItemTemplate>
<table style="width: 100%" cellpadding="0" cellspacing="0" border="0">
<tr>
<td width="6%" style="padding-left:5px;padding-top:3px;">
<a href="javascript:switchViews('divRF<%# Eval("RecordingFilterId") %>', 'dragHandle<%# Eval("RecordingFilterId") %>');">
<img id="imgdivRF<%# Eval("RecordingFilterId") %>" border="0" src="Images/expand.png" />
</a>
</td>
<td width="34%">
<asp:Label ID="Label7" runat="server" Text='<%# Eval("Name") %>' meta:resourcekey="Label7Resource1" /></td>
</tr>
<tr>
<td colspan="6" width="100%" style="padding-right:10px;" >
<div id="divRF<%# Eval("RecordingFilterId") %>" style="display: none; width: 99%;">
<table style="width: 100%;" cellspacing="0" cellpadding="0" border="0" >
<tbody>
<tr>
<td style="color: white; width: 15%; padding-left: 30px;" class="topleft" align="left">
<div>
<b>
<asp:Label ID="Label3" runat="server" Text="Rule" meta:resourcekey="Label3Resource2"></asp:Label></b>
</div>
</td>
</tr>
</tbody>
</table>
<div class="reorderListDemo" style="margin-left: 0px;width: 97%;">
<cc1:ReorderList ID="ReorderList2" runat="server" PostBackOnReorder="False" CallbackCssStyle="callbackStyle"
AllowReorder="True" DataKeyField="RuleId" SortOrderField="Priority"
>
<ItemTemplate>
<table style="width: 100%" cellpadding="0" cellspacing="0" border="0">
<tr>
<td align="left" style="padding-left: 10px; width: 15%;">
<asp:Label ID="Label6" runat="server" ToolTip='<%# Eval("RuleName") %>' Text='<%# Eval("RuleName").ToString().Length > 14 ? Eval("RuleName").ToString().Substring(0,12) + ".." : Eval("RuleName").ToString() %>' />
</td>
</tr>
</table>
</ItemTemplate>
<ReorderTemplate>
<asp:Panel ID="Panel2" runat="server" CssClass="reorderCue" meta:resourcekey="Panel2Resource1">
</asp:Panel>
</ReorderTemplate>
<DragHandleTemplate>
<div class="dragHandleChild" id="dragHandle<%# Eval("RecordingFilterId") %>">
</div>
</DragHandleTemplate>
</cc1:ReorderList>
<asp:SqlDataSource ID="SqlDataSource2" runat="server" ConnectionString="<%$ ConnectionStrings:MyConnectionString %>"
ProviderName="<%$ ConnectionStrings:MyConnectionString.ProviderName %>"
OnDeleted="OnRuleDeleted" SelectCommand="SELECT RuleId,RecordingFilterId,RuleName,RecordingAction,RecordingCondition,ExtensionValue,Priority,CallType FROM rules WHERE ([RecordingFilterId] [email protected]) and RuleName <> '' ORDER BY [Priority] asc"
UpdateCommand="UPDATE [Rules] SET [Priority] = @Priority WHERE RuleId = @original_RuleID"
DeleteCommand="exec DeleteRule @original_RuleID" OldValuesParameterFormatString="original_{0}">
<DeleteParameters>
<asp:Parameter Name="original_RuleID" />
</DeleteParameters>
<SelectParameters>
<asp:ControlParameter ControlID="lblCategoryName" Name="RecordingFilterId" PropertyName="Text"
Type="String" />
</SelectParameters>
<UpdateParameters>
<asp:Parameter Name="Priority" Type="Int32" />
<asp:Parameter Name="original_RuleID" Type="String" />
</UpdateParameters>
</asp:SqlDataSource>
</div>
</div>
</td>
</tr>
</table>
</ItemTemplate>
<ReorderTemplate>
<asp:Panel ID="Panel2" runat="server" CssClass="reorderCue" >
</asp:Panel>
</ReorderTemplate>
<DragHandleTemplate>
<div class="dragHandle" id="dragHandle<%# Eval("RecordingFilterId") %>">
</div>
</DragHandleTemplate>
</cc1:ReorderList>
</div>
<asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:MyConnectionString %>"
ProviderName="<%$ ConnectionStrings:MyConnectionString.ProviderName %>"
SelectCommand="SELECT RecordingFilterId,Name,Description,SystemFilter,Priority FROM recordingfilters WHERE SystemFilter='1' AND STATUS =1 order BY Priority"
UpdateCommand="UPDATE [recordingfilters] SET [Priority] = @Priority WHERE RecordingFilterId = @original_RecordingFilterId"
OnDeleted="OnFilterDeleted" DeleteCommand="exec DeleteRecordingFilter @original_RecordingFilterId"
OldValuesParameterFormatString="original_{0}">
<DeleteParameters>
<asp:Parameter Name="original_RecordingFilterId" />
</DeleteParameters>
<UpdateParameters>
<asp:Parameter Name="Priority" Type="Int32" />
<asp:Parameter Name="original_RecordingFilterId" Type="String" />
</UpdateParameters>
</asp:SqlDataSource>
Geride ve erişilebilir kodu ile SqlDataSource1
ait ConnectionString
değiştirebilir ancak SqlDataSource2
erişilebilir değil: İşte kullanıyorum kod örneğidir. Bağlantı Dizesini arkasından kod olarak atamak istediğimde, bunu nasıl başaracağımı bana bir ipucu verebilir.
Bağlantı Dizesi'ni nasıl değiştirmeye çalıştığınızı biliyorum. –
@Nitin Alapati Page_Load azından ben SqlDataSource1.ConnectionString = "MyNewString" yapıyorum; –
@Nitin Alapati ancak sözdiziminde herhangi bir hata sqlDataSource2 –