none
怎么把数据传给UserControl,在UserControl里实现绑定? RRS feed

  • 问题

  • 新建了Windows Metro Style Grid APP

    自己写了个UserControl, 代码如下:

    <UserControl
        x:Class="GridTest1.MyUserControl"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:local="using:GridTest1"
        xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
        xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
        mc:Ignorable="d"
        d:DesignHeight="300"
        d:DesignWidth="400">
       
        <UserControl.Resources>

            <DataTemplate x:Key="testDataTemplate">
                <Border Width="182" Height="82" Background="Transparent" Margin="0">
            <TextBlock Text="{Binding Title}" HorizontalAlignment="Center" />
                </Border>
            </DataTemplate>

            <ItemsPanelTemplate x:Key="ItemsPanelTemplate1">
                <WrapGrid Orientation="Horizontal" Margin="0,0,0,0" MaximumRowsOrColumns="7"/>
            </ItemsPanelTemplate>
           
        </UserControl.Resources>
       
        <Grid>
          <ItemsControl Name="market" ItemsSource="{Binding Source={StaticResource itemsViewSource}}"
                    ItemTemplate="{StaticResource testDataTemplate}"
                    ItemsPanel="{StaticResource ItemsPanelTemplate1}">
          </ItemsControl>

        </Grid>
       
    </UserControl>

    在GroupedItemsPage.xaml里使用自己的写的MyUserControl:

    <local:MyUserControl Grid.Row="1" DataContext="{Binding Source={StaticResource itemsViewSource}}"/>

    怎么把itemsViewSource的数据传给UserControl??

    2012年7月19日 7:23

答案

  • 你已经在使用这个UserControl的时候指定了他的DataContext,所以你在你的UserControl中的代码只需要:

        ...
        <Grid>
          <ItemsControl Name="market" ItemsSource="{Binding}"
                        ItemTemplate="{StaticResource testDataTemplate}" 
                        ItemsPanel="{StaticResource ItemsPanelTemplate1}">
          </ItemsControl>
        </Grid>
        
    </UserControl>


    Bob Bao [MSFT]
    MSDN Community Support | Feedback to us

    • 已标记为答案 donarlee 2012年8月1日 1:56
    2012年7月19日 9:14
    版主