Tag: xaml

绑定datagrid列可见性MVVM

.Net 3.5 我知道列不会inheritancedatacontext,并通过阅读其他职位,我认为这将工作: Visibility="{Binding RelativeSource={x:Static RelativeSource.Self}, Path=(FrameworkElement.DataContext).IsColumnNameVisible, Converter={StaticResource boolToVisConverter}}" 然而,当然它不..输出窗口不抱怨,似乎是我find的资源,但viewmodel属性是较新的调用。 这是整个DG: <tk:DataGrid VirtualizingStackPanel.IsVirtualizing="False" Grid.Column="0" AlternationCount="2" AreRowDetailsFrozen="True" AutoGenerateColumns="False" Background="Transparent" BorderThickness="0" CanUserAddRows="False" CanUserReorderColumns="True" CanUserResizeRows="False" GridLinesVisibility="None" ItemsSource="{Binding Employees}" SelectionMode="Single" ColumnHeaderStyle="{StaticResource columnHeaderStyle}" RowHeaderStyle="{StaticResource rowHeaderStyle}" CellStyle="{StaticResource cellStyle}" RowStyle="{StaticResource rowStyle}" ContextMenu="{StaticResource columnHeaderContextMenu}"> <tk:DataGrid.Resources> <ContextMenu x:Key="columnHeaderContextMenu" ItemsSource="{Binding ColumnHeaderContextMenuItems}" /> <Style TargetType="{x:Type ScrollBar}"> <Setter Property="Background" Value="Transparent"/> </Style> <Style TargetType="{x:Type tk:DataGridColumnHeader}"> <Setter Property="Background" Value="Transparent"/> […]

使WPF文本框绑定每个新的字符触发?

如何在文本框中input新字符后立即进行数据绑定更新? 我正在学习WPF中的绑定,现在我陷入了一个(希望)简单的事情。 我有一个简单的FileLister类,您可以在其中设置Path属性,然后当您访问FileNames属性时,它将为您提供文件的列表。 这是这个class级: class FileLister:INotifyPropertyChanged { private string _path = ""; public string Path { get { return _path; } set { if (_path.Equals(value)) return; _path = value; OnPropertyChanged("Path"); OnPropertyChanged("FileNames"); } } public List<String> FileNames { get { return getListing(Path); } } private List<string> getListing(string path) { DirectoryInfo dir = new DirectoryInfo(path); List<string> result […]

XAML中的#region

我其实不喜欢我的代码中的#region。 但由于某种原因,我叫我疯了,我想在他的XAML。 我想整个部分有一个像区域的东西,并将其折叠(例如我的<Window.CommandBindings>,<Grid。* Definitions>,<Menu>,<Toolbar>等)。 这是否存在? 如果不是,那么<RegionCollapse>如何?

'clr-namespace'URI是指一个不包含在程序集中的名字空间

我试图在我的XAML中包含一些转换值的类。 但是,编译时出现以下错误: 未定义的CLR名称空间。 'clr-namespace'URI指的是一个不包含在程序集中的命名空间'View.Summary.Converters'(View \ View) 和XAML错误: xmlns:c="clr-namespace:View.Summary.Converters" 另外,这里是我的转换类/名称空间的大纲: namespace View.Summary.Converters { class CollapsedIfNegative : IValueConverter { } class VisibleIfNegative : IValueConverter { } class ErrorCodeToString : IValueConverter { } } 我不得不删除代码的内容,因为我正在进行的项目是高度机密的。

如何更改vs2012中的XAMLdevise器的背景颜色?

我只是试着在Designer中查看XAML代码后的结果。 然而,当我在vs2012中使用黑暗的主题时很难辨认黑色字母。 我的问题是如何将devise师背景更改为白色,而无需修改黑暗的主题。 似乎改变工具的几个选项? 谢谢

DataGrid行内容垂直alignment

我有一个从WPF 4.0 RTM的常规DataGrid,我从数据库中放置数据。 为了使DataGrid的干净和清淡的风格我使用高/高的行,默认情况下,DataGrid排列行垂直位置的内容,但我想设置一个中心垂直alignment。 我已经尝试使用这个属性 VerticalAlignment="Center" 在DataGrid选项中,但它不能帮助我。 这里是一个XAML代码的例子,描述我的DataGrid没有中心垂直alignment: <DataGrid x:Name="ContentDataGrid" Style="{StaticResource ContentDataGrid}" ItemsSource="{Binding}" RowEditEnding="ContentDataGrid_RowEditEnding"> <DataGrid.Columns> <DataGridTextColumn Header="UserID" Width="100" IsReadOnly="True" Binding="{Binding Path=userID}" /> <DataGridTextColumn Header="UserName" Width="100" Binding="{Binding Path=userName}" /> <DataGridTextColumn Header="UserAccessLevel" Width="100" Binding="{Binding Path=userAccessLevel}" /> <DataGridTextColumn Header="UserPassword" Width="*" Binding="{Binding Path=userPassword}" /> </DataGrid.Columns> </DataGrid> 执行此代码的结果: 正如你所看到的,所有行的内容都有顶部垂直alignment。 为了获得每行内容的中心垂直alignment,我必须添加什么? 谢谢。

如何在代码中分配dynamic资源样式?

我想在代码中生成与XAML相同的代码: <TextBlock Text="Title:" Width="{Binding FormLabelColumnWidth}" Style="{DynamicResource FormLabelStyle}"/> 我可以做的文字和宽度,但我如何分配dynamic资源的风格: TextBlock tb = new TextBlock(); tb.Text = "Title:"; tb.Width = FormLabelColumnWidth; tb.Style = ???

如何在XAML中做一个简单的超链接?

我想要做的就是在XAML中做一个超级链接。 我已经尝试了一切。 我放弃。 这是什么语法? <StackPanel Width="70" HorizontalAlignment="Center"> <Hyperlink Click="buttonClose_Click" Cursor="Hand" Foreground="#555" Width="31" Margin="0 0 0 15" HorizontalAlignment="Right">Close</Hyperlink> <Button Width="60" Margin="0 0 0 3">Test 1</Button> <Button Width="60" Margin="0 0 0 3">Test 2</Button> <Button Width="60" Margin="0 0 0 3">Test 3</Button> <Button Width="60" Margin="0 0 0 3">Test 4</Button> </StackPanel> Visual Studio团队:在Visual Studio 2010中,我想让Clippypopup并说“看起来你正在尝试创build一个超链接”,并告诉我如何去做。 你不能用MEF做这个吗? 这将是复古的酷,而这些小小的“我怎么做我已经知道如何做的HTML”问题在XAML的学习过程中耗费了太多的时间。

我在哪里可以find一些示例WPFanimation?

因为我是程序员,而不是艺术家或animation师,所以我没能在应用程序中展示WPF的最佳function。 虽然我有简单的buttonanimation像增长,或者有颜色淡入点击更明亮的东西,但我所寻找的是一些展示buttonanimation和一些展示面板更改animation展示WPF的最佳function。 通常我会去做更微妙的改变,但在一些情况下,我需要一些东西来展示使用WPF而不是WinForms技术的优点。 任何人都可以指向我的一些button样本和/或面板更改(从一个面板切换到下一个导航),真正显示的WPF,并有这个令人振奋的因素。 编辑 请不要指向http://codeproject.com或微软示例,因为我已经详细阅读了这些示例。 其实这里是我的rss阅读器的WPF网站列表(欢迎其他博客的build议): Lester的WPF博客 , Ask WPF , Expression Blend和Design , WPF Wonderland , nerdplusart , WPF的Karl , Windows Presentation Foundation SDK , WPF的Josh Smith , Rob Relyea – Xamlified , The Moth 。 我想要具体的例子,谢谢…

通过WPF中的代码隐藏访问资源

我有一个自定义集合在我的窗口资源中定义如下(在一个Sketchflow应用程序,所以窗口实际上是一个UserControl): <UserControl.Resources> <ds:MyCollection x:Key="myKey" x:Name="myName" /> </UserControl.Resources> 我希望能够在代码隐藏中引用这个集合,我期望这个集合是由x:Name组成,但是我似乎无法访问它。 我可以使用它的参考 myRef = (MyCollection) this.FindName("myKey"); 但是这看起来很骇人听闻。 这是不好的做法,什么会更好? 谢谢 :)