Tag: wpf

GridViewColumn宽度调整

我的UI: 我的UI的Codebehind: internal void Update(IEnumerable pers) { this.persons.ItemsSource = null; this.persons.ItemsSource = pers; UpdateLayout(); } 我的实体: class Person { public string Name { get; set; } public int Age { get; set; } } GridViewColumns具有GridViewColumn-Header的宽度。 即使我使用长名称的人调用Update()。 列不会resize。 a)如何自动(当我调用Update时)将“名称”列调整为最长名称的长度,但不长于值x(我想指定列的最大宽度)? b)如何指定“Age”-Column将空间填充到控件的末尾(以便gridview的列使用控件的完整宽度)?

在XAML中向元素添加自定义属性?

在html中,没有什么可以阻止你创建自定义属性,因为它实际上是xml,如 然后你可以通过javascript阅读该属性。 你能在wpf中做同样的事情吗? 例如: 如果是这样,您将如何访问该属性? 例如: MyCanvas.MyProperty;

如何隐藏Visual Studio中自定义工具生成的文件

我想隐藏我的自定义工具生成的文件,但我找不到任何关于如何完成此操作的文档。 我正在寻找的一个例子是文件背后的WPF代码。 这些文件不会显示在Visual Studio项目视图中,而是使用项目进行编译,并且可在IntelliSense中使用。 文件后面的WPF代码(例如,Window1.gics)由自定义工具生成。

如何在WPF / XAML中绑定背景颜色?

我需要更改为以下代码,以便背景为红色,我尝试的两种方式都没有: 替代文字http://www.deviantsart.com/upload/1okq25l.png XAML: 代码背后: using System.Windows; using System.ComponentModel; namespace TestBackground88238 { public partial class Window1 : Window, INotifyPropertyChanged { #region ViewModelProperty: Background private string _background; public string Background { get { return _background; } set { _background = value; OnPropertyChanged(“Background”); } } #endregion #region ViewModelProperty: Message private string _message; public string Message { get { […]

将控制绘制到内存(位图)

是否可以在不绘制屏幕的情况下将wpf控件绘制到内存(Bitmap)? 我找到了一个如何保存到Bitmap的示例,但它仅在窗口中绘制窗口时才有效。 BitmapImage bitmap = new BitmapImage(); RenderTargetBitmap renderTarget = new RenderTargetBitmap((int)canvaspad.Width, (int)canvaspad.Height, 96, 96, System.Windows.Media.PixelFormats.Default); renderTarget.Render(canvaspad);

替换WPF中的部分默认模板

是否有任何“最佳实践”方法来替换默认模板的一部分。 当前的用例是树视图。 默认情况下,树视图具有这种小三角形形状以展开和折叠。 如果我替换整个控件模板,我知道如何替换这些,如下面的代码所示。 我不确定是否有办法“保持所有默认值,只需更改XY”。 它不是一种风格,我基本上需要替换现有控件模板的一部分。 为了说明,请查看以下XAML。 第一个较小的块是我希望能够适应的相关XAML。 较大的第二和第三部分基本上是默认模板的副本,仅用于从头开始管理“已更改”部分。 有没有更好的方法来实现这一点,在下半年节省长而混乱的XAML?

使用TextBox动态过滤DataGrid的名称

首先是我的问题:我喜欢动态地使用TextBox过滤我的DataGrid以获取Name 。 我目前的代码: 如何填充DataGrid : cnb1 = new MySqlConnectionStringBuilder(); cnb1.Server = “xxxxxxxxxxxxxxxxxxx”; cnb1.Database = “xxxxxxxxxxxxxxx”; cnb1.UserID = “xxxxxxxxxxxxxxxxx”; cnb1.Password = “xxxxxxxxxxxxxxxxxx”; cn1 = new MySqlConnection(cnb1.ConnectionString); cn1.Open(); da = new MySqlDataAdapter(“SELECT * FROM AktuelleDaten”, cn1); da.MissingSchemaAction = MissingSchemaAction.AddWithKey; da.SelectCommand.ExecuteNonQuery(); ds = new DataSet(); da.Fill(ds); hauptübersichtgrid.ItemsSource = ds.Tables[0].DefaultView; TextBox的代码: private void TextBox_TextChanged(object sender, TextChangedEventArgs e) { DataSet […]

将System.Windows.Media.ImageSource转换为ByteArray

有没有办法将ImageSource对象转换为字节数组? 我有一个绑定到WPF窗口的ImageSource对象,我可以从数据库转换一个字节数组并将其转换为ImageSource,但我不能以相反的方式。 Thx提前。 编辑:我试图将ImageSource转换为BitmapImage但得到一个null对象。

双向数据绑定与WPF中的字典

我想将Dictionary绑定到WPF中的ListView 。 我想通过数据绑定机制更新Dictionary中的Values来实现这一点。 我不想仅仅改变Keys 。 我也不关心在Dictionary添加新的映射。 我只是想更新现有的。 将Dictionary设置为ListView的ItemsSource不能实现此目的。 它不起作用,因为ListView使用Enumerator来访问Dictionary的内容,并且该枚举的元素是不可变的KeyValuePair对象。 我当前的调查线试图使用Keys属性。 我将它分配给ListView的ItemsSource属性。 这允许我显示Keys但我不太了解WPF的数据绑定机制来访问Dictionary的Values 。 我发现了这个问题: 在XAML中访问codebehind变量但仍然无法弥补差距。 你们中的任何人都知道如何使这种方法有效吗? 有没有人有更好的方法? 看起来,作为最后的手段,我可​​以构建一个自定义对象并将其粘贴在List ,我可以从中重新创建/更新我的Dictionary但这似乎是一种绕过内置数据绑定function而不是有效利用它的方法。

什么是WPF最好的自由时间选择器?

我正在为WPF寻找一个简单的时间选择器控件。 我发现找到了这个: Time Picker 但它有一些问题,例如你不能输入“00”,第二个零不会出现。 Silverlight似乎有一个: http://jesseliberty.com/2009/03/28/toolkit-control-%E2%80%93-timepicker/ 但它不适用于WPF 。 WPF工具包本身有一个DatePicker而不是TimePicker。 或者有没有办法允许用户在WPFToolkit DatePicker中输入时间和日期? 它在SelectedDate中返回 DateTime但我没有看到如何允许用户也选择具有此控件的时间。 什么是最好的免费WPF控件,允许用户以HH:MM:SS格式输入时间?