2013-11-22 4 views
1

나는 asp.net 페이지에서 다음이 : 이것은 위대한 작품을Gridview의 DataSourceId를 동적으로 변경할 수 있습니까?

<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" DataKeyNames="DateToVisit" 
     DataSourceID="AccessYouthSchedule" AutoGenerateEditButton="True"> 
     <Columns> 
      <asp:BoundField DataField="Observer" HeaderText="Observer" SortExpression="Observer" /> 
      <asp:BoundField DataField="DateToVisit" HeaderText="DateToVisit" ReadOnly="True" SortExpression="DateToVisit" /> 
      <asp:BoundField DataField="YouthClass" HeaderText="YouthClass" SortExpression="YouthClass" /> 
      <asp:BoundField DataField="DidVisitOccur" HeaderText="DidVisitOccur" SortExpression="DidVisitOccur" /> 
      <asp:BoundField DataField="IdForEmail" HeaderText="IdForEmail" SortExpression="IdForEmail" /> 
      <asp:CheckBoxField DataField="WeekBeforeNoticeSent" HeaderText="WeekBeforeNoticeSent" SortExpression="WeekBeforeNoticeSent" /> 
      <asp:CheckBoxField DataField="DayOfNoticeSent" HeaderText="DayOfNoticeSent" SortExpression="DayOfNoticeSent" /> 
      <asp:BoundField DataField="PlanToVisit" HeaderText="PlanToVisit" SortExpression="PlanToVisit" /> 
     </Columns> 
</asp:GridView> 
<asp:AccessDataSource ID="AccessYouthSchedule" runat="server" DataFile="~/App_Data/SundaySchool.mdb" 
     SelectCommand="SELECT Observer, [DateToVisit], [YouthClass], [DidVisitOccur], [IdForEmail], [WeekBeforeNoticeSent], [DayOfNoticeSent], [PlanToVisit] FROM [YouthSchedule]" 
     UpdateCommand="UPDATE YouthSchedule SET Observer = @Observer, YouthClass = @YouthClass, DidiVisitOccur = @DidVisitOccur, IdForEmail = @IdForEmail, 
         WeekBeforeNoticeSent = @WeekBeforeNoticeSent, DayOfNoticeSent = @DayOfNoticeSent, PlanToVisit = @PlanToVisit WHERE DateToVisit = @DateToVisit"> 
</asp:AccessDataSource> 

. 그러나, 나는 다른 ASP가 : 내가 사용하고자하는 AccessDataSource 년대 : 나는 단순히 때문에이 '열'에 GridView1.DataSourceId 속성을 설정할 수 없습니다

<asp:AccessDataSource ID="AccessDoctrineEssentials" runat="server" DataFile="~/App_Data/SundaySchool.mdb" 
     SelectCommand="SELECT [DoctrineObserver1], [DoctrineObserver2], [EssentialsObserver], [DateToVisit] FROM [DoctrineAndEssentials]" 
     UpdateCommand="UPDATE DoctrineAndEssentials SET DoctrineObserver1 = @DoctrineObserver, DoctrineObserver2 = @DoctrineObserver2, 
         EssentialsObserver = @EssentialsObserver WHERE DateToVisit = @DateToVisit"> 
</asp:AccessDataSource> 

. 다른 AccessDataSource로 신속하게 전환 할 수 있습니까? 그것들은 주로 같은 데이터베이스에있는 서로 다른 테이블들입니다.

+2

빨리. 여러 개의 격자를 만들고 숨기거나 표시해야합니다. 그렇지 않으면 코드에서 열을 작성해야합니다. –

+0

어떻게 열을 구축합니까? 솔직히 복수 gridviews를 가지고있는 것이 더 쉬울 수도 있습니다 ... –

+0

['GridView.Columns'] (http://msdn.microsoft.com/en-us/library/system.web)와 함께 열을 추가 할 수 있습니다. ui.webcontrols.gridview.columns (v = vs.110) .aspx) 접근 자, 그러나 나는 여러 격자를 사용한다고 생각한다. 마크 업 접근법은 거의 확실히 더 나은 접근 방식입니다. –

답변

0

가장 간단한 해결책은 여러 개의 격자보기를 사용하는 것입니다.

관련 문제