Tag: xaml

如何在弹出窗口关闭后直接使用combobox来正确设置焦点

当用户从combobox中选择值时,如果他们选择了一个值,则会触发“SelectionChanged”事件并设置新值并且一切正常。 但是,如果他们决定不更改值并单击UI上的其他位置(如他们要编辑的文本框),则必须单击两次 – 第一次单击只需关闭combobox弹出窗口,然后下一次单击将关注他们想要在第一次点击时激活的元素。 如何阻止combobox弹出窗口在第一次点击时劫持焦点目标? 我已经尝试过监视ComboBox_LostFocus事件,但这会在错误的时间触发。 当用户单击下拉列表并显示弹出列表时,ComboBox_LostFocus事件将触发 – 它将失去焦点到它自己的下拉列表。 我不想做任何改变。 当用户点击然后弹出窗口关闭时,ComboBox永远不会重新获得焦点(焦点只是’丢失’到所有东西),因此这个事件是无用的。

故事板无法找到ControlTemplate元素

我创建了一些相当简单的XAML,并且它完美地运行(至少在KAXML中)。 从XAML中调用时,故事板运行完美,但当我尝试从外部访问它时,我得到错误: ‘buttonGlow’ name cannot be found in the name scope of ‘System.Windows.Controls.Button’. 我正在使用流阅读器加载XAML,如下所示: Button x = (Button)XamlReader.Load(stream); 并试图运行故事板: Storyboard pressedButtonStoryboard = Storyboard)_xamlButton.Template.Resources[“ButtonPressed”]; pressedButtonStoryboard.Begin(_xamlButton); 我认为问题是我动画的字段在模板中,故事板正在访问按钮。 这是XAML: Test 任何了解WPF和XAML的人都比我好多了? 这是错误堆栈跟踪: at System.Windows.Media.Animation.Storyboard.ResolveTargetName(String targetName, INameScope nameScope, DependencyObject element) at System.Windows.Media.Animation.Storyboard.ClockTreeWalkRecursive(Clock currentClock, DependencyObject containingObject, INameScope nameScope, DependencyObject parentObject, String parentObjectName, PropertyPath parentPropertyPath, HandoffBehavior handoffBehavior, HybridDictionary clockMappings, Int64 layer) […]

透明的UWP窗口10

我试图弄清楚如何在应用程序上有一个透明的背景,让用户看到它背后。 我试图在xaml文件中更改background和opacity参数,但没有任何改变。 我也在背景中设置了透明图像 但它不起作用 有谁知道如何执行此操作?

WPF绑定:根据属性设置列表框项文本颜色

我敢肯定这可能是WPF中的基本内容,但我是XAML语法的新手,我正试图绕过它。 安装程序 我有一个LogItem类型 – 只是一个POCO: public class LogItem { public string Message {get;set;} public Color MessageColor {get;set;} } 和我的ViewModel中的LogItem列表: private ObservableCollection _logItems; public ObservableCollection LogItems { get { return _logItems; } set { if (value != _logItems) { _logItems = value; OnPropertyChanged(“LogItems”); } } } 我的viewmodel绑定到视图,以便我可以执行以下操作: (显然我还是要设置显示文本绑定等) 问题 鉴于我在LogItems中有一个Message和MessageColor属性,将项目文本的颜色绑定到我指定的颜色的正确XAML语法是什么?

绑定到DataVM中的SelectedItems或MVVM中的ListBox

在底部看到我的答案 只是在WPF上做一些轻量级阅读,我需要从DataGrid绑定selectedItems,但我无法想出任何有形的东西。 我只需要选定的对象。 数据网格:

使用WPF按钮复制和粘贴命令

我创建了一个包含按钮的工具栏。 其中3个按钮是剪切复制和粘贴。 我设置了每个按钮的命令来剪切复制和粘贴属性,但是当我运行程序时,没有按钮甚至可以点击。 他们是残疾人我猜吗? 我正在尝试将文本框中的文本框复制并粘贴到tabcontrol中。 任何帮助表示赞赏。

如何使用MVVM模式在WPF数据网格中绑定CurrentCell

我正在学习WPF MVVM模式。 我陷入了datagrid Binding CurrentCell 。 基本上我需要当前单元格的行索引和列索引。 这是我的ViewModel private User procedureName = new User(); public DataGridCell CellInfo { get { return procedureName.CellInfo; } //set //{ // procedureName.CellInfo = value; // OnPropertyChanged(“CellInfo”); //} } 这是我的模特 private DataGridCell cellInfo; public DataGridCell CellInfo { get { return cellInfo; } //set //{ // cellInfo = value; // OnPropertyChanged(“CellInfo”); //} […]

为什么OnPropertyChanged在Code Behind中不起作用?

我试图通过将ViewModel模型放在后面的代码中并将DataContext绑定为“this”来简化一些代码,但它似乎工作方式不同,在下面的示例中: 为什么在单击按钮时,绑定到“Message”的TextBlock不会更改,即使调用了OnPropertyChanged(“Message”)? XAML: 代码背后: using System.Windows; using System.ComponentModel; namespace TestSimple223 { public partial class Window1 : Window { #region ViewModelProperty: Message private string _message; public string Message { get { return _message; } set { _message = value; OnPropertyChanged(“Message”); } } #endregion public Window1() { InitializeComponent(); DataContext = this; Message = “original message”; Message2.Text = […]

在WPF中仅使用XAML基于TextBox的文本过滤ListBox的项目

我目前有一个ListBox绑定到一个项目集合。 由于集合很大,我们希望根据TextBox上输入的文本过滤显示的项目。 我要问的是,如果只使用XAML可以实现,我不想修改项目集合,我想根据filter修改每个项目的可见性。 希望它清楚, 谢谢!

ScrollViewer不会滚动

我希望有一个接口,3个组件紧挨着另一个。 第一个是ListView,另外两个是Grids。 由于组件将在右侧溢出,我想将它们放在ScrollViewer中。 我没有成功。 我试着做一个非常简单的例子来试试,但即便是这个例子也失败了。 如您所见,ScrollViewer位于网格内部。 我错过了什么?