Tag: xaml

自动高度与MaxHeight结合使用

我在设置以下xaml布局时遇到问题: RowHeightAuto.xaml DataGrid1控件未显示任何定义了大量列和行的滚动条。 当我用高度=“*”替换高度=“自动”时,一切都有效,而水平和垂直滚动条看起来像预期的那样。 当我直接在DataGrid1声明MaxHeight时它也可以工作,但这并不是我想要的。 这是一个错误,childcontrol在设置Height =“Auto”时忽略了最大高度,还是我可能做错了? 使用ListBox / ListView等可以重现相同的行为,也可以使用ComponentOne,Telerik等第三方控件… 如果这是一个错误 – 你知道一个解决方法或有其他提示吗? 以下是我如何设置DataGrid的ItemsSource的代码。 RowHeightAuto.xaml.cs public partial class RowHeightAuto : Window { private readonly DateTime _start; public RowHeightAuto() { InitializeComponent(); DataGrid1.ItemsSource = GetTestData(); _start = DateTime.Now; Dispatcher.BeginInvoke(new Action(() => MessageBox.Show((DateTime.Now – _start).TotalSeconds.ToString(CultureInfo.InvariantCulture))), DispatcherPriority.ContextIdle, null); } public static List GetTestData() { const int maxCols = 501; […]

XAML Designer未显示

在MS Visual Studio Express 2013 for Windows桌面中: 我正在学习C#并按照示例说明如何在.xaml文件中创建用户界面。 https://msdn.microsoft.com/en-us/library/jj153219.aspx 从教程(见图7和图8)看,应该有一些窗口显示GUI。 但是,当我尝试在解决方案资源管理器中打开.xaml文件时,查看代码(Ctrl + Alt + 0)和视图设计器(Shift + F7)都呈现相同的内容:只是代码。 如何打开GUI框? 更新 – 这是.xaml文件内容。 注意:我正在尝试打开一个新的C#WPF应用程序。 这是Visual Studio生成的股票代码。 没有XAML UI Designer选项: 没有完整的XAML视图设置: 谢谢! 这是我下载的Visual Studio版本。 该描述使我相信应该安装XAML UI Designer,这应该不是问题。 适用于Windows桌面的Express 2013 Visual Studio Express for Windows Desktop使您可以充分利用Windows与XAML设计器,高效的IDE以及各种编程语言(包括C#,Visual Basic和C ++)。 在Windows Presentation Foundation(WPF),Windows Forms和Win32之间进行选择,以针对您的应用程序和技能使用正确的技术来定位Windows桌面。

类型引用找不到名为的公共类型

我收到错误,如“类型引用无法在xaml中找到名为’Sign’的公共类型”。 我怎么解决它。 Sign类位于同一个程序集中。 …

当我添加新行时,如何将RichTextBox滚动到末尾?

我有几个只读的RichTextBox用于记录输出。 因为它们是只读的,所以当文本更新时它们似乎不会自动滚动。 我可以使用TextChanged事件强制滚动结束,但是不是简单的方法在XAML中设置属性或其他东西,以便滚动像正常一样发生吗?

绑定到WPF DataGrid时,此视图不允许使用DataGrid版本的“EditItem”

我一直在阅读这个至少4个小时,似乎是列表类型,但我有一个情况: 具有集合属性的ObservableCollection。 我定义了第一个DataGrid,并在该部分中 一切顺利,屏幕上的所有内容都如我所料……但是: 如果尝试修改DataGrid1单元格,它允许我。 如果尝试修改DataGrid2单元格,则会抛出此exception’EditItem’ is not allowed for this view 我错过了什么? 这是我的模特: public partial class Level1 { public Level1() { this.Level2 = new HashSet(); } public decimal IdLevel1 { get; set; } public decimal IdLevel2 { get; set; } public string StrDescripcionTipoAsociado {get;set;} public virtual Level2 Level2{ get; set; } } public partial […]

WPF – 无边框窗口没有正确最大化

好吧,所以我一直在谷歌搜索几个小时,似乎无法找到我所遇到的问题的直接答案。 我有一个自定义窗口, WindowStyle = “None”和AllowsTransparency = “True”当我点击我的最大化按钮时: private void MaximizeButton_Click(object sender, RoutedEventArgs e) { if(this.WindowState == WindowState.Normal) { App.Current.MainWindow.WindowState = WindowState.Maximized; } else { App.Current.MainWindow.WindowState = WindowState.Normal; } } 它几乎完全按照它的方式最大化,除了它似乎在窗口的顶部和左侧有-6px的边距。 这是它的样子 我不希望那个白色空间存在(它只是白色,因为谷歌Chrome在它背后开放,它实际上是透明的)。 我需要应用程序最大化以适应整个屏幕,不包括任务栏。 到目前为止,我发现的唯一修复是在按下最大化按钮时将窗口Margin = “6, 6, 0, 0″设置为Margin = “6, 6, 0, 0” 。 以下是其余代码供参考: StartUp.xaml App Name Welcome to your Expense Calculator! Get […]

WP8.1 C#绑定联系人图像

信息 很简单,我正在尝试创建一个可以显示用户联系人的应用程序。 我也是一个自学成才的程序员,所以我在某些方面有编程经验,但我对数据绑定一般都比较新。 首先,我有一个ListView控件,其中包含图像绑定。 我还有一个转换器,它获取Contact Image的IRandomAccessStream并将其作为BitmapImage返回。 如果未找到任何图像(nullexception),则转换器将返回联系人的默认图片。 public class ContactPictureConverter : IValueConverter { public object Convert(object value, Type targetType, object parameter, string culture) { Contact c = value as Contact; try { return GetImage(c).Result; } catch (Exception ex) { Debug.WriteLine(ex.Message); } return @”Images/default.jpg”; } async Task GetImage(Contact con) { BitmapImage bitmapImage = new BitmapImage(); bitmapImage.DecodePixelHeight […]

WPF ComboBox绑定ItemsSource

我是WPF的初学者,并试图将ComboBox的Items绑定到ObservableCollection 我用过这段代码: XAML C# public MainWindow() { cmbTest.ItemsSource = cmbContent; cmbContent.Add(“test 1”); cmbContent.Add(“test 2”); InitializeComponent(); } public ObservableCollection cmbContent { get; set; } 在我尝试调试之前,我没有在此代码上出现任何错误,它会抛出错误: TargetInvocationError PresentationFramework.dll中出现未处理的“System.Reflection.TargetInvocationException”类型exception 谁能告诉我我做错了什么?

WPF自定义控件依赖属性中未知对象的双向绑定问题

我有一个自定义控件 – 为AutoComplete TextBox实现。 我从以下问题得到了所有想法在WPF C#中使用多个控件的组合创建自定义控件 。 在该自定义控件中,他们建议使用以下代码来添加项目, 它的完美工作和双向绑定 。 (this.ItemsSource as IList).Add(this._textBox.Text); 但是,我将以下代码更改为Unknown Object,因此我将IList更改为IList (this.ItemsSource as IList).Add(item); XAML: 但它没有更新ViewModel Property Collection 。 我也在xaml中尝试了以下更改 ItemsSource=”{Binding Collection, UpdateSourceTrigger=PropertyChanged, Mode=TwoWay}” 我不知道我在哪里犯了这个错误。 function : CustomControl的TextBox接受来自User的输入并触发ProviderCommand ,该Command根据User Input过滤远程数据并通过AutoItemsSource发送Filtered Collection,此属性被绑定为ListBox内的ItemsSource CustomControl选择Item。 我们可以从ListBox项中选择Item,通过单击Item,它会触发CustomControl类中的Command AddCommand ,它会在CustomControl ItemSource属性中添加所选项。 我在这个Property ItemsSource遇到了双向绑定问题 。 仅从此属性中我们可以将Selected项目作为集合。 这是我的完整源代码 自定义控件C#代码: public class BTextBox : ItemsControl { static BTextBox() { […]

在Binding中使用StringFormat显示带空格的Hex值

我无法弄清楚如何使用StringFormat显示hex: 08 A4 23 F5 具体来说,我想要每2个字符后面的空格。 我这样做的时候: Text=”{Binding MyIntValue, StringFormat={}{0:x}}” 它看起来像这样: 08A423F5 我的备份计划是在绑定上使用转换器,但我想知道是否可以使用StringFormat来完成它。