我正在尝试设置一个TabControl并且有75%的方式,但是我很难设计实际的TabItems:

我想要实现的是删除默认的ContentPresenter,以便我可以使用圆角边缘使标签项部分透明,而不是我现在拥有的红色和绿色的占位符.
我敢肯定它可能并不那么困难,但我无法弄清楚所以任何帮助都会非常感激!
到目前为止,这是TabControl的XAML:
<TabControl TabStripPlacement="Left" HorizontalAlignment="Stretch" BorderBrush="#41020202">
<TabControl.BitmapEffect>
<DropShadowBitmapEffect Color="Black" Direction="270"/>
</TabControl.BitmapEffect>
<TabControl.Resources>
<Style TargetType="{x:Type TabItem}">
<Setter Property="BorderThickness" Value="0"/>
<Setter Property="Padding" Value="0" />
<Setter Property="HeaderTemplate">
<Setter.Value>
<DataTemplate>
<Border x:Name="grid" Background="Red">
<ContentPresenter>
<ContentPresenter.Content>
<TextBlock Margin="4" FontSize="15" Text="{TemplateBinding Content}"/>
</ContentPresenter.Content>
<ContentPresenter.LayoutTransform>
<RotateTransform Angle="270" />
</ContentPresenter.LayoutTransform>
</ContentPresenter>
</Border>
<DataTemplate.Triggers>
<DataTrigger Binding="{Binding RelativeSource={RelativeSource Mode=FindAncestor,AncestorType={x:Type TabItem}},Path=IsSelected}" Value="True">
<Setter TargetName="grid" Property="Background" Value="Green"/>
</DataTrigger>
</DataTemplate.Triggers>
</DataTemplate>
</Setter.Value>
</Setter>
</Style>
</TabControl.Resources>
<TabControl.Background>
<RadialGradientBrush Center="-0.047,0.553" GradientOrigin="-0.047,0.553" RadiusY="1.231" RadiusX="0.8">
<GradientStop Offset="1" Color="#06FFFFFF"/>
<GradientStop Color="#14FFFFFF"/>
</RadialGradientBrush>
</TabControl.Background>
<TabItem Header="Tab Item …Run Code Online (Sandbox Code Playgroud) 我有一个主要由图像和按钮组成的控件.我想在图像背面显示图像元数据,并在按下按钮时让控件水平翻转:
即

点击"信息"按钮......

围绕轴旋转图像180度...

用元数据(或任何真实的)显示图像的"后退".
显然,当点击红色"关闭"按钮时,图像围绕最后的180度旋转,以便再次显示图像.
我在XAML中没有做任何3D,但我不明白为什么这会太复杂......
给定具有以下定义的类:
public class MyTestClass
{
public int ValueA { get; set; }
public int ValueB { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
如何在MyTestClass []数组中找到重复值?
例如,
MyTestClass[] items = new MyTestClass[3];
items[0] = new MyTestClass { ValueA = 1, ValueB = 1 };
items[1] = new MyTestClass { ValueA = 0, ValueB = 1 };
items[2] = new MyTestClass { ValueA = 1, ValueB = 1 };
Run Code Online (Sandbox Code Playgroud)
包含副本,因为有两个MyTestClass对象,其中ValueA 和 ValueB都= 1
是否有任何方法可以在控件之间共享列宽,而不仅仅是在同一控件上的多个网格之间?
我想要得到的原始图表:

我目前正忙着在每个UserControl的第一列中获取标签的宽度,但它似乎是一个混乱的解决方案,相当CPU重(找到标签并计算文本的宽度,在它呈现之前是讨厌的!) .
我一直在阅读尽可能多的关于SharedSizeGroups的内容,但没有任何迹象表明它们可以在不同的控件上工作.有一个简单的解决方案,甚至是一个不那么简单的简单解决方案吗?!
我安装了2010年2月的WPF工具包,因为我对评估AutoCompleteBox控件感兴趣,而且我的成功非常有限.我可以让控件工作,但是一旦我尝试在XAML中设置它的任何属性,我得到以下内容:
未知的构建错误,'无法解析对程序集的依赖关系'WPFToolkit,Version = 3.5.40128.1,Culture = neutral,PublicKeyToken = 31bf3856ad364e35'因为它尚未预加载.使用ReflectionOnly API时,必须通过ReflectionOnlyAssemblyResolve事件按需预加载或加载相关的程序集.
我一直在一个新的解决方案的空白WPF窗口上测试它.我猜我只是缺少一个引用或者其他东西......这是XAML(我没有在.xaml.cs中添加任何东西):
<Window x:Class="WpfToolkitApplication.Window1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:toolkit="clr-namespace:System.Windows.Controls;assembly=System.Windows.Controls.Input.Toolkit"
Title="Window1" Height="300" Width="300">
<Grid>
<toolkit:AutoCompleteBox Height="25"/>
</Grid>
</Window>
Run Code Online (Sandbox Code Playgroud)
我添加的唯一引用是System.Windows.Controls.Input.Toolkit.有任何想法吗?
毫无疑问,这将是直截了当的,但出于任何理由,我的思绪在其上留下了空白.
我有一个小的,不可调整大小的窗口(325x450),里面有3个扩展器,垂直堆叠.每个Expander都包含一个ItemsControl,它可能包含很多项目,因此需要滚动.
我似乎无法做到的是如何布局扩展器,以便它们扩展以填充任何可用空间而无需将其他元素从屏幕上移开.我可以通过使用网格并将每个扩展器放在一个具有*高度的行中来实现我所追求的目标,但这意味着它们总是占据窗口的1/3,这会破坏扩展器的点:)
我正在努力实现的蹩脚图表:

我在WPF 4应用程序中呈现一个奇怪的渲染问题,因为它渲染了一些文本,因为它正在拉伸它并使其非常窄.
.net 3.5:
.net 4.0: 
起初我认为它可能是字体的问题,但我也看到Blend 4 beta中的同样问题:

我正在运行XP SP3,Visual Studio 2010 Professional,所有内容都是最新的.我没有注意到我在同一台机器上构建的Silverlight 4应用程序的任何此类问题......其他人看到过这个或者知道它为什么会发生?
我正在尝试使用以下命令从TS1.6中的剪贴板访问数据:
$(container).bind("paste", (e) => {
var data = e.originalEvent.clipboardData.getData('text');
});
Run Code Online (Sandbox Code Playgroud)
但它只是给我以下构建错误:
类型'JQueryEventObject'上不存在属性'clipboardData'
如果我删除第二行并在Chrome 46中调试它,我只需通过调用即可获得剪贴板数据
e.originalEvent.clipboardData.getData('text');
Run Code Online (Sandbox Code Playgroud)
我看不到clipboardData在jQuery.d.ts的最新版本的JQueryEventObject接口,但问题是 - 它应该是有还是有,从目前该TS支持剪贴板检索数据以不同的方式?
我有一个允许用户旋转图像的控件 - 这是XAML的简化版本:
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="*"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<Border Grid.Row="0" Margin="5"
BorderBrush="Black" BorderThickness="2"
Background="#ddd">
<Viewbox>
<Image Source="image.jpg" RenderTransformOrigin="0.5, 0.5">
<Image.RenderTransform>
<RotateTransform Angle="{Binding ElementName=Slider, Path=Value}"/>
</Image.RenderTransform>
</Image>
</Viewbox>
</Border>
<Slider x:Name="Slider"
Grid.Row="1" Margin="5"
Minimum="-180" Maximum="180"
Value="0"/>
</Grid>
Run Code Online (Sandbox Code Playgroud)
我遇到的问题是图像在旋转时可以跨越包含矩形的边界,而我需要调整它以使其适合.我可以计算ViewModel的最佳拟合并将其绑定,但我很确定我可能只是错过了XAML中的一个技巧来让我发生这种情况.我认为Viewbox可能已经完成了这个伎俩,但事实并非如此,或者我错误地使用它...
有没有人找到一种解决方法来获取自定义字典支持,以用于 WPF TextBoxes/RichTextBoxes 上的内置拼写检查?我们一直在用 Reflector 探测拼写,希望找到字典条目的来源,但它看起来很像一个 COM 对象......
我知道它目前不受支持,并且微软正在考虑在未来的版本中支持它,但那是很久以前的事了,我似乎找不到任何有关它的最新消息。
我紧握着木头,在 Connect 上发布了一条建议:
https://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=470233
wpf ×7
xaml ×2
.net ×1
c# ×1
controls ×1
dictionary ×1
flip ×1
fonts ×1
header ×1
layout ×1
linq ×1
rotation ×1
styles ×1
tabcontrol ×1
textbox ×1
typescript ×1
wpftoolkit ×1