我该如何在Expression Blend 3中创建一个DataTemplate?

3
我目前正在尝试使用Expression Blend 3 MIX09版本,并计划将其主要用于具有数据绑定的MVVM结构网站,能够在设计时查看实时数据。到目前为止,我感到非常印象深刻,并且必须说{{Blend 3}}生成的XAML并不像人们所说的那样糟糕。我已经成功地完成了以下两个示例,一个是数据绑定,另一个是动态加载用户控件(视图)。我可以在90%的时间内留在Expression Blend中设计我的应用程序,当我设计时可以看到来自我的ViewModels的实时数据。我只在需要创建配置文件或添加引用时才切换到Visual Studio,因为这更容易。Blend 3的改进智能感知功能使我也可以在Blend中进行大部分编码:

然而,有一件事让我感到惊讶的是,我不能在Expression Blend中完成的,就是在创建完一个ListBox之后,我希望能右键单击并创建一个DataTemplate。当然,我可以在代码中创建DataTemplate,然后在资源/窗口下再次找到它,可以点击旁边的按钮“进入DataTemplate”,在我的对象和时间表面板中看到其中的控件,这很好。但从控件创建DataTemplate是如此常见,我认为只是我错过了某种方法。

在Blend 3中,您可以在哪里为ListBox或ListView等“创建DataTemplate”?

<UserControl
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
    xmlns:local="clr-namespace:TestDynamic456"
    mc:Ignorable="d"
    x:Class="TestDynamic456.CustomersView"
    x:Name="UserControl"
    d:DesignWidth="640" d:DesignHeight="480">

    <UserControl.Resources>
        <local:CustomersViewModel x:Key="CustomersDataProvider"/>
    </UserControl.Resources>
    <StackPanel x:Name="LayoutRoot" Background="{x:Null}">

        <ListBox ItemsSource="{Binding Path=GetAll, Source={StaticResource CustomersDataProvider}}"/>

    </StackPanel>
</UserControl>
1个回答

3
在Blend 3中,您可以在与Blend2相同的位置创建ItemsControl的DataTemplate ;)。
右键单击控件->编辑其他模板->编辑生成的项(ItemTemplate)->创建空白。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接