Tag: xaml

WPF绑定StringFormat短datestring

我想在WPF中使用Short Date命名的string格式。 我尝试了这样的: <TextBlock Text="{Binding Date, StringFormat='Short Date'}" /> 这个怎么做?

什么是WPF / XAML的开源替代品?

如果我们从HTML / CSS中学到了什么东西,声明性语言(如XML)在描述用户界面方面做得很好,因为: 构build能够有效地对代码进行模板化的代码预处理器很容易。 该代码是在一个良好定义结构良好(理想)格式,所以很容易parsing。 已经存在用于有效分析或抓取基于XML的源文件的技术。 用户界面的脚本代码变得更简单,更容易理解。 它足够简单,devise者能够自己devise界面。 程序员很喜欢创buildUI,因此devise人员应该很容易。 最近我看了一下WPF应用程序(即XAML)的内容,它看起来非常熟悉HTML中使用的声明性语言风格。 目前桌面用户界面开发的状态在很大程度上被分解了,否则在graphics用户界面devise(IE,GTK,XUL,Qt,Winforms,WPF等)领域将不会有太多重复的工作。 只有Python有45个GUI平台 什么是一些代表这些特征的开源GUI: 标准化 平台独立 声明性标记语言 语言不可知的 WPF,或者更具体地说,XAML似乎是朝着正确的方向迈出的一步。 更新: 非常感谢信息,保持联系'。 以下是我从评论和答案中收集的选项。 GladeXML 编辑器: Glade界面devise器 操作系统平台:全部 GUI平台: GTK + 语言:C(libglade),C ++,C#(Glade#),Python,Ada,Pike,Perl,PHP,Eiffel,Ruby XRC(XML资源) 编辑: wxGlade , XRCed , wxDesigner , DialogBlocks (非免费) 操作系统平台:全部 GUI平台: wxWidgets 语言:C ++,Python( wxPython ),Perl( wxPerl ),.NET( wx.NET ) 基于XML的格式不是免费的,不是跨平台的,或者是语言特定的 XUL 编辑:任何基本的文本编辑器 OS平台:任何运行支持XUL的浏览器的操作系统 […]

如何禁用VisualStudio中的devise模式选项

如何在不使用Visual Studio的情况下只使用XAML代码视图加载devise模式? 我需要每一次禁用designMode,我无法find这个在我的select… 替代文字http://www.biggle.de/allView2.jpg

如何为CustomBinding MarkupExtension制作Resharperparsingpath

我想创build一些扩展绑定标记扩展,其行为就像一个正常的WPF绑定,但做更多的事情(使用不同的默认值,可能会添加一些行为等)。 代码如下所示: public class CustomBindingExtension : Binding { .. some extra properties and maybe overrides … } 这一切工作正常,包括XAML-intellisense,除了我不能使Resharper正确解决我的绑定path。 即:使用这个代码我可以[Strg] +点击'CurrentText'和Resharper让VS2010导航到定义CurrentText属性的代码。 <UserControl x:Name="uc" …> <TextBox Text="{Binding ViewModel.CurrentText, ElementName=uc}" /> </UserControl> 但使用我的绑定,在运行时正常工作,我只是得到一个工具提示hover'CurrentText'告诉我这是一些'MS.Internal.Design.Metadata.ReflectionTypeNode',并没有通过[Strg] +点击导航。 <UserControl x:Name="uc" …> <TextBox Text="{util:CustomBinding ViewModel.CurrentText, ElementName=uc}" /> </UserControl> 我尝试了以下的东西: 从绑定派生 从BindingDecoratorBase派生 省略我的CustomBinding类的“扩展”后缀 把Markup-Extension放在一个单独的程序集中 使用ConstructorArgumentAttribute path属性的stringtypes和typesPropertyPath的属性 我也看了原来的类Binding和BindingBase,但是找不到我的代码有更多的区别。 任何想法应该在这里帮助吗? 或者,这只是对Binding-MarkupExtension的一种特殊处理,我无法获得自己的MarkupExtensions? 更新16.03.2011:也可能是缺陷或Resharper缺陷,Jetbrains正在调查的问题:http://youtrack.jetbrains.net/issue/RSRP-230607 更新10.12.2013:同时,该function似乎工作(与R#7.1.3,也许也是早期版本),我实际上使用BindingDecoratorBase的方法,我非常喜欢它。 如果你的MarkupExtension以'Binding'结尾,但是我的确如此,所以我很高兴。

不断从Visual Studio中获取“从工具包中加载工具箱内容”而IT需要付出!

有没有其他人有这个问题? 状态栏中的完整消息说, 从包“Microsoft.VisualStudio.IDE.ToolboxControlsInstaller.ToolboxInstallerPackage”中加载工具箱内容“{D766DAA8-F81E-4621-9184-F21C7F389796} 这通常发生在我打开一个xaml文件,而VS坐在那里,没有反应,约2分钟。

从外部文件或程序集加载WPF样式或其他静态资源

我有几个WPF应用程序,我希望我所有的样式都在共享程序集中,而不是分别在每个应用程序中声明它们。 我正在寻找一种方法,所以我不必在现有的应用程序中改变我所有的Style="{StaticResource BlahBlah}" ; 我只是想添加这个样式程序集的引用,并从当前的应用程序中删除它,所以它是从程序集中提取的。 有什么办法吗?

如何在ComboBoxItem的内容中包含&符号(&)

我目前有一个Combobox如下: //XAML <ComboBox> <ComboBoxItem> Awake & Alive</ComboBoxItem> </ComboBox> 这会产生一个错误:实体引用或以&符号开头的序列必须以分号“;”结尾。 我假设我错过了某种转义序列,以允许我使用&。 我怎样才能设置这个comboboxitem的内容包括一个&? 谢谢

在WPF中的菜单中放置一个分隔线

在XAML中,如何在菜单中添加标准分界线? 例如 <MenuItem Header="_File" Name="m_fileMenu"> <MenuItem Header="_Open" Command="ApplicationCommands.Open"/> <!– Trying to put a divider here! –> <MenuItem Header="-" /> <!– Wrong guess –> <MenuItem Header="E_xit" Command="ApplicationCommands.Close" /> </MenuItem>

我怎样才能得到我的列表框中的垂直滚动条?

在下面的例子中,我有一个列表框,其中有几十个字体名称。 我会认为它会自动有一个垂直滚动条,以便您可以select任何字体,不只是在列表中的第一个,但它没有。 所以我添加了一个“ScrollViewer”,并在右侧放置了一个“滚动条区域”,但是在滚动条区域没有滚动条,因此您可以滚动(!)。 为什么不是一个滚动条自动,我怎么强制它有一个滚动条? <StackPanel Name="stack1"> <Grid> <Grid.RowDefinitions> <RowDefinition Height="2*"></RowDefinition> <RowDefinition Height="*"></RowDefinition> </Grid.RowDefinitions> <ScrollViewer> <ListBox Grid.Row="0" Name="lstFonts" Margin="3" ItemsSource="{x:Static Fonts.SystemFontFamilies}"/> </ScrollViewer> </Grid> </StackPanel>

如何添加垂直分隔符?

我想添加一个垂直分隔符到网格,但我只能find水平。 是不是有一个属性,你可以input,如果分隔线应水平或垂直? 我搜查了很多,但没有find一个简短的解决scheme。 我使用.Net Framework 4.0和Visual Studio Ultimate 2012。 如果我尝试将水平分隔符旋转90度,则会丧失“停靠”到其他组件的能力。 旋转后的分隔符如下所示: <Separator HorizontalAlignment="Left" Height="100" Margin="264,26,0,0" VerticalAlignment="Top" Width="100" RenderTransformOrigin="0.5,0.5"> <Separator.RenderTransform> <TransformGroup> <ScaleTransform/> <SkewTransform/> <RotateTransform Angle="90"/> <TranslateTransform/> </TransformGroup> </Separator.RenderTransform> </Separator>