无法找到并添加SurfaceUserControl
本文关键字:添加 SurfaceUserControl | 更新日期: 2023-09-27 18:02:07
我可以很容易地在Surface环境中创建UserControl和添加TextBox。下面是一个示例代码:
<UserControl x:Class="ScatterViewSizingSample.FixedSizeChild"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:local="clr-namespace:ScatterViewSizingSample"
mc:Ignorable="d" local:PopupWindow.InitialSizeRequest="300,250"
d:DesignHeight="300" d:DesignWidth="250">
<Grid Background="MediumSeaGreen">
<TextBox HorizontalAlignment="Left" Name="textBox1" VerticalAlignment="Top"/>
</Grid>
</UserControl>
我试图添加SurfaceUserControl和SurfaceTextBox,但我找不到从菜单中添加SurfaceUserControl。我将UserControl更改为s:SurfaceUserControl,将Texbox更改为s:SurfaceTextbox,如下所示:
<s:SurfaceUserControl x:Class="ScatterViewSizingSample.FixedSizeChild"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:s="http://schemas.microsoft.com/surface/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:local="clr-namespace:ScatterViewSizingSample"
mc:Ignorable="d" local:PopupWindow.InitialSizeRequest="300,250"
d:DesignHeight="300" d:DesignWidth="250">
<Grid Background="MediumSeaGreen">
<s:SurfaceTextBox HorizontalAlignment="Left" Name="textBox1"/>
</Grid>
</s:SurfaceUserControl>
但是系统显示错误' type s:SurfaceWindows does not found'我添加了Microsoft.Surface.Presentation和Microsoft.Surface.Presentation. generic assembly reference。但是仍然显示错误。
我该如何修复它?为什么系统不显示SurfaceUserControl为UserControl?
使用Surface控件的应用程序需要使用SurfaceWindow作为它的根视图,以便完成所有的自定义触摸处理。我怀疑,因为你试图转换这个你可能仍然使用一个标准的窗口给你这个错误。
如果您正在开发2.0,则根据MSDN, SurfaceUserControl不再存在:
SurfaceUserControl类已在Surface 2.0中删除。Surface 1.0 SP1中需要使用SurfaceUserControl类来为用户控件添加触摸支持。然而,在。net Framework 4中,触摸支持已经被添加到UserControl类中。要转换代码,请从"s:SurfaceUserControl"的前面删除"s:Surface",或者使用Surface Migration PowerToy
源