Questions tagged «xaml»

可扩展应用程序标记语言(XAML)是一种基于XML的声明性语言,用于初始化各种框架中的结构化值和对象。如果对使用特定框架的XAML的使用有疑问,还应提供该框架的标签,例如[wpf](Windows Presentation Foundation),[silverlight],[windows-phone],[windows-store-apps]( Windows 8应用商店应用程序),[win-universal-app],[xamarin.forms]或[workflow-foundation]

30
该名称在XAML中的命名空间错误中不存在
在VB.NET WPF应用程序上使用VS2012。我有一个用于学习WPF的简单MusicPlayer教程应用程序。我正在逐步将本教程的C#版本转换为VB.NET。 它在应用程序中有2个类,它们都在同一个命名空间下。我可以在XAML中引用名称空间,但是当我尝试在XAML中引用类对象时,出现错误,并且无法编译。 奇怪的是,IntelliSense既可以通过xmlns:c =标记引用名称空间,也可以在使用键入类对象时很好地工作, <c: 但是该对象带有下划线,并且在尝试在设计器中构建或工作时会生成错误。 .vb类文件位于名为\ Controls的文件夹中。主项目根命名空间特意留为空白。该类是这样编码的... Namespace MusicPlayer.Controls Public Class UpdatingMediaElement .... code here End Public End Namespace xaml看起来像这样 (<Window >标记中定义的命名空间 xmlns:c="clr-namespace:MusicPlayer.Controls" (在中定义的对象<Grid>) <c:UpdatingMediaElement Name="MyMediaElement" /> (显示错误)名称空间“ clr-namespace:MusicPlayer.Controls”中不存在名称“ UpdatingMediaElement”。 不确定出什么问题或如何解决?

8
如何将WPF DataGrid绑定到可变数量的列?
我的WPF应用程序生成的数据集每次可能具有不同的列数。输出中包括对将用于应用格式设置的每一列的描述。输出的简化版本可能类似于: class Data { IList<ColumnDescription> ColumnDescriptions { get; set; } string[][] Rows { get; set; } } 此类设置为WPF DataGrid上的DataContext,但实际上是通过编程方式创建的: for (int i = 0; i < data.ColumnDescriptions.Count; i++) { dataGrid.Columns.Add(new DataGridTextColumn { Header = data.ColumnDescriptions[i].Name, Binding = new Binding(string.Format("[{0}]", i)) }); } 有什么方法可以用XAML文件中的数据绑定替换此代码吗?
124 c#  wpf  xaml  data-binding  datagrid 

4
使用StringFormat将字符串添加到WPF XAML绑定
我有一个WPF 4应用程序,其中包含一个TextBlock,该TextBlock具有单向绑定到整数值(在这种情况下为摄氏度)的功能。XAML看起来像这样: <TextBlock x:Name="textBlockTemperature"> <Run Text="{Binding CelsiusTemp, Mode=OneWay}"/></TextBlock> 这对于显示实际温度值效果很好,但是我想格式化该值,因此它包括°C而不是数字(30°C而不是30)。我一直在阅读有关StringFormat的文章,并且看到了一些类似的通用示例: // format the bound value as a currency <TextBlock Text="{Binding Amount, StringFormat={}{0:C}}" /> 和 // preface the bound value with a string and format it as a currency <TextBlock Text="{Binding Amount, StringFormat=Amount: {0:C}}"/> 不幸的是,在我尝试执行的过程中,我所见的所有示例均未将字符串附加到绑定值上。我敢肯定它一定很简单,但是我找不到运气。谁能告诉我该怎么做?

25
WPF和XAML的隐藏功能?
已锁定。该问题及其答案被锁定,因为该问题是题外话,但具有历史意义。它当前不接受新的答案或互动。 这是为各种语言讨论的大量隐藏功能。现在,我对XAML和WPF的某些隐藏功能感到好奇吗? 我发现的一个是ListView的标题单击事件 <ListView x:Name='lv' Height="150" GridViewColumnHeader.Click="GridViewColumnHeaderClickedHandler"> GridViewColumnHeader.Click属性未列出。 到目前为止的一些相关功能: 多重绑定结合StringFormat TargetNullValue绑定 TextTrimming属性 标记扩展 向窗口添加航空效果 先进的“字幕”属性 XAML转换器 也可以看看: C#的隐藏功能 Python的隐藏功能 ASP.NET的隐藏功能 Perl的隐藏功能 Java的隐藏功能 VB.NET的隐藏功能 PHP的隐藏功能 Ruby的隐藏功能 C的隐藏功能 等等........

5
有没有办法在XAML中链接多个值转换器?
在经过两次单独的转换后,我需要显示一个整数值,该值绑定到我的数据上下文中的属性: 反转某个范围内的值(例如,范围是1到100;数据上下文中的值是90;用户看到的值是10) 将数字转换为字符串 我意识到我可以通过创建自己的转换器(实现IValueConverter)来完成这两个步骤。但是,我已经有一个单独的值转换器,它仅执行第一步,而第二步由Int32Converter覆盖。 有没有一种方法可以在XAML中链接这两个现有类,而不必创建进一步的类来聚合它们? 如果我需要澄清其中任何一个,请告诉我。:) 谢谢。


4
在WPF中创建菜单栏?
我想在WPF应用程序中创建一个与Windows窗体中的菜单栏相同的菜单栏。 我该怎么做? WPF控件工具箱中的菜单选项仅提供一个空白栏。
120 c#  wpf  xaml 

10
强制WPF工具提示停留在屏幕上
我有一个用于Label的工具提示,我希望它保持打开状态,直到用户将鼠标移到其他控件上为止。 我已经在工具提示上尝试了以下属性: StaysOpen="True" 和 ToolTipService.ShowDuration = "60000" 但是在两种情况下,工具提示仅显示5秒钟。 为什么这些值被忽略?
119 c#  wpf  xaml  tooltip 

10
如何使XAML DataGridColumns填充整个DataGrid?
我在XAML(不是Silverlight)中使用具有可调整大小的列的DataGrid,如果用户调整屏幕大小,则DataGrid将扩展。 当前,如果所有DataGrid列的宽度都小于DataGrid的宽度,我会出现一个多余的“列”,该列不可单击且无用。 有谁知道如何使一列始终调整大小以填充所有剩余空间?
116 c#  wpf  xaml  datagrid  wpf-controls 

9
如何添加垂直分隔符?
我想将垂直分隔符添加到网格,但是我只能找到水平分隔符。没有属性,如果分隔线是水平还是垂直,您可以在其中输入? 我进行了很多搜索,但没有找到解决此问题的简便方法。 我使用.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>

6
从DataTemplate访问父DataContext
我有一个ListBox绑定到ViewModel上的子集合。列表框项是根据父ViewModel上的属性在数据模板中设置样式的: <Style x:Key="curveSpeedNonConstantParameterCell"> <Style.Triggers> <DataTrigger Binding="{Binding Path=DataContext.CurveSpeedMustBeSpecified, ElementName=someParentElementWithReferenceToRootDataContext}" Value="True"> <Setter Property="Control.Visibility" Value="Hidden"></Setter> </DataTrigger> </Style.Triggers> </Style> 我收到以下输出错误: System.Windows.Data Error: 39 : BindingExpression path error: 'CurveSpeedMustBeSpecified' property not found on 'object' ''BindingListCollectionView' (HashCode=20467555)'. BindingExpression:Path=DataContext.CurveSpeedMustBeSpecified; DataItem='Grid' (Name='nonConstantCurveParametersGrid'); target element is 'TextBox' (Name=''); target property is 'NoTarget' (type 'Object') 因此,如果我将绑定表达式更改为"Path=DataContext.CurrentItem.CurveSpeedMustBeSpecified"它可以工作,但前提是父用户控件的datacontext是a BindingListCollectionView。这是不可接受的,因为其余的用户控件会自动绑定到CurrentItemon的属性BindingList。 如何在样式内部指定绑定表达式,以便无论父数据上下文是集合视图还是单个项目,绑定表达式都可以工作?


12
在Enter键上绑定文本框
默认的数据绑定TextBox为TwoWay,仅当TextBox失去焦点时才将文本提交给属性。 当我按?Enter键时,是否有任何简单的XAML方法使数据绑定发生TextBox。我知道在后面的代码中很容易做到,但是请想象这TextBox是否复杂DataTemplate。
108 c#  wpf  xaml  .net-3.5  textbox 


4
XAML ColumnDefinition中的*(星号)是什么意思?
以下XAML中的*(星号)是什么意思? <ColumnDefinition Width="0.07*"/> <Grid Height="100" HorizontalAlignment="Left" Margin="102,134,0,0" Name="grid1" VerticalAlignment="Top" Width="354"> <Grid.ColumnDefinitions> <ColumnDefinition Width="40*" /> <ColumnDefinition Width="314*" /> </Grid.ColumnDefinitions> </Grid>
106 wpf  xaml  xamarin  layout  grid 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.