小编Bad*_*dor的帖子

WPF DataTemplate ContentPresenter"绑定"

有人可以解释一下我在这里使用的代码是如何工作的吗?

<Window.Resources>
    <DataTemplate DataType="{x:Type VM:PBRKEntryViewModel}">
        <V:Overview  />
    </DataTemplate>
    <DataTemplate DataType="{x:Type VM:LoginViewModel}">
        <V:LoginView />
    </DataTemplate>
</Window.Resources>
<Grid>
    <ContentPresenter Content="{Binding CurrentView}"/>
</Grid>       
Run Code Online (Sandbox Code Playgroud)

我目前在细节方面的问题是:

  • 为什么ContentPresenter可以在不引用不同DataTemplates的情况下呈现正确的UserControl?我可以看到,ContentPresenter内容绑定到我的ViewModels CurrentViewProperty,但我的DataTemplates没有?
  • 另一个很棒的功能是UserControls使用正确的ViewModels而没有声明.(或者我没看到声明)

我已经找到了这个描述http://msdn.microsoft.com/en-us/library/System.Windows.Controls.ContentPresenter(v=vs.110).aspx但是备注部分没有回答这个问题.(或者我看不到他们......)

再次,为了清楚起见,一切都很完美,但我不明白为什么,所以这只是一个理解选择模板和绑定的问题.

wpf datatemplate

8
推荐指数
2
解决办法
8571
查看次数

C#KeyDown事件多字符加上ControlKey

我想识别我的Control的按键.为此,我使用KeyDown事件.我想要检测的击键类型是CTRL + A或CTRL + C等等.(所以多功能键的组合)

现在我已经恢复了KeyEventArgs并找到了密钥枚举.(一切正常,只需使用|和&组合并找到正确的键)示例可以是Shift + A,然后KeyData枚举的值为:ShiftKey | 转移| 一个

当我按下控制键尝试它(所以控制+ A)我得到131137作为响应?而且我不知道为什么我没有得到类似ControlKey的东西 控制| A(或类似的东西)

我已经认识到我是否尝试使用A ist 131137与B ist 131138与C ist 131139等等...所以我认为有可能计算密钥但我认为应该有一个更好的解决方案然后只是这样的事情?

131137 - 131072 = 65(A)

我是对的,还是这是预先解决的解决方案,还是我想念一些基本的?

最好的祝福

c# controls keydown

6
推荐指数
1
解决办法
1万
查看次数

c#Image PropertyItems(Metadate)你怎么知道哪个号码是哪个属性?

我知道Image.PropertyItems数组包含有关已加载图像的所有元数据信息.

你怎么知道例如ID = 20736是例如每张幻灯片的GIF时间的值?

是否有所有已知ID的列表?我还没找到任何东西.

最好的祝福

c# properties image

1
推荐指数
1
解决办法
8553
查看次数

标签 统计

c# ×2

controls ×1

datatemplate ×1

image ×1

keydown ×1

properties ×1

wpf ×1