在datatemplate中只指定了一个usercontrol实例

时间:2009-02-23 12:48:38

标签: wpf user-controls datatemplate

我已将userControl指定为dataTemplate。

<TabControl IsSynchronizedWithCurrentItem="True" ItemsSource="{Binding Path=Pages}">
   <TabControl.ContentTemplate>
      <DataTemplate>
         <uc:ItemTemplateControl />
      </DataTemplate>
   </TabControl.ContentTemplate>
</TabControl>

userControl非常简单,只是绑定到字符串属性,工作正常。 但奇怪的是,只有一个实例创建了userControl(ctor中的调试器只打了一次),即使我有多个项目......

如何为每个项目创建单独的userControl实例?

2 个答案:

答案 0 :(得分:0)

在tabControl中直接指定dataTemplate时,它不起作用。 您必须将dateTemplate指定为单独的资源。

答案 1 :(得分:-2)

尝试将用户控件置于转发器控件内,并将转发器控件与数据源绑定。例如,

<asp:Repeater ID="repeatInfo" runat="Server">
 <ItemTemplate>
  <tr>
     <td>
        <Your control/>
     </td>
  </tr>
 </ItemTemplate>
</asp:Repeater>