Articles of xaml

在XAML中使用在Silverlight中的代码中创建的静态对象

我无法在Silverlight中使用它,所以我创建了两个测试项目。 一个简单的WPF项目和一个简单的Silverlight项目,它们只做一件事:在代码中设置一个公共静态只读变量,并在一个完全裸的XAML中使用它。 在WPF中,工作顺利。 在Silverlight中,我收到以下编译器警告和运行时错误: 警告2 XML名称空间“ http://schemas.microsoft.com/winfx/2006/xaml ”中不存在“静态”标记… 和 属性Text的属性值{x:Static SilverlightApplication3:Page.Test}无效。 [线路:7位置:25] 我假设Silverlight 2不支持这个,或者我只是遗漏了一些非常简单的东西? 这是两者的完整代码,以防万一是后者: public partial class Window1 : Window { public static readonly string Test = “test”; public Window1() { InitializeComponent(); } } 这是SL版本: public partial class Page : UserControl { public static readonly string Test = “test”; public Page() { InitializeComponent(); } […]

从Silverlight中的不同ResourceDictionary引用ResourceDictionary中的资源

我在App.xaml中有以下代码集: NavigationPanel.xaml包含一个如下所示的样式: {StaticResource DarkBackground}在Brushes.xaml文件(即第一个资源字典)中定义。 它被定义为 在资源字典中。 在运行时,我收到以下错误: Cannot find a Resource with the Name/Key DarkBackground [Line: 16 Position: 44] 行号和位置引用app.xaml中的NavigationPanel.xaml资源字典。 我可以从其他控件引用画笔,而不是包含的资源字典。 为什么我不能引用或为什么它不能解析对合并资源字典的层次结构更高的资源的引用? 我在这里想念的是什么?

创建自定义wpf事件

我创建了一个UserControl for Database连接,用户输入连接的用户名和密码。 此UserControl位于MainWindow.xaml中 现在,在我的UserControl后面的代码中,我创建了一个MSSQL连接。 如果登录成功,我想提升自定义事件以在MainWindow中公开。 例如,在MyUserControl.xaml.cs中 try { using (SqlConnection sqlConn = new SqlConnection(connection)) { sqlConn.Open(); MessageBox.Show(“Connessione Riuscita!”, “Connessione a ” + TextIP.Text, MessageBoxButton.OK, MessageBoxImage.Information); RaiseMyEvent(); sqlConn.Close(); } } catch (SqlException ex) { MessageBox.Show(“Connessione Fallita: ” + ex.Message, “Connessione a ” + TextIP.Text, MessageBoxButton.OK, MessageBoxImage.Error); } 在MainWindow.xaml我想使用mypersonalized事件: 我需要这个用于多种类型的连接(MSSQL,Oracle,MySql等)。 怎么弄这个?

在代码中设置静态资源

我的App.xaml文件中有几个样式: 我想在mainpage.xaml.cs的代码中更改BackgroundProperty 。 我试过用这个: Style style = Application.Current.Resources[“stackpanelBackground”] as Style; style.Setters.SetValue(StackPanel.BackgroundProperty, “{StaticResource styleRed}”); 但我遇到了灾难性的失败exception。 我认为它与{StaticResource styleRed} 。 有一个更好的方法吗?

在运行时切换wpf资源字典

我正在尝试构建一个允许用户在运行时更改主题的wpf应用程序。 到目前为止我所做的是创建一个resourcedictionary,其中包含在其中定义的应用程序的所有颜色,然后我绑定到xaml中的这个字典。 下面是我切换资源字典的代码: if (System.IO.File.Exists(fileName)) { using (FileStream fs = new FileStream(fileName, FileMode.Open)) { ResourceDictionary dic = (ResourceDictionary)XamlReader.Load(fs); Resources.MergedDictionaries.Clear(); Resources.MergedDictionaries.Add(dic); } } 这段代码运行正常,我知道它正在切换资源字典,但它不会更新已经显示在屏幕上的元素。 我的问题是:我如何刷新或重新绑定屏幕以考虑新的资源字典? 谢谢 SM

为什么WPF不在Windows 8中显示Windows 8样式按钮

这是一个Windows 8风格的按钮: 这是.NET 4.5 WPF应用程序中的一个按钮: 任何想法为什么WPF不显示本机Windows 8样式按钮? 有没有办法来解决这个问题?

如何在XAML中动态访问元素名称?

我有一个用户填写的XAML输入表单。 我想validation这个表单。 我有一个集合中的字段信息,我想循环并检查每个字段。 但是如何在字符串中访问字段的名称, 例如当fieldInformation.FieldName =“CompanyName”时我想检查“Field_CompanyName.Text”。 伪代码: foreach (var fieldInformation in _fieldInformations) { if (Field_{&fieldInformation.FieldName}.Text.Length > 2) { ErrorMessage.Text = String.Format(“The length of {0} is too long, please correct.”, fieldInformation.FieldName); entryIsValid = false; } } XAML: 代码隐藏: _fieldInformations.Add(new FieldInformation { FieldName = “CustomerID”, FieldSize = 5 }); _fieldInformations.Add(new FieldInformation { FieldName = “CompanyName”, FieldSize = […]

使用指向可执行文件的“fullTrustProcess”创建应用程序包时出错

我正在尝试使用UWP应用程序部署示例应用程序以桥接AppServices。 该示例运行并构建得很好,但是当我尝试按照指南打包整个事情时,它给了我一个错误。 链接到包装指南 这里是AppService Bridge示例存储库。 错误信息: Error Manifest validation error: Line 36, Column 64, Reason: The file name “BackgroundProcess.exe” declared for element “*[local-name()=’Applications’]/*[local-name()=’Application’]/*[local-name()=’Extensions’]/*[local-name()=’Extension’ and @Category=’windows.fullTrustProcess’]” doesn’t exist in the package. 我发现代码片段会产生错误,但我还没有找到解决方法。 如果我从文件Package.appxmanifest中 删除以下代码,Visual studio将成功构建包: 但这显然也会消除过程中的桥接,这是本练习的重点。 这似乎与这个问题有些相关,但不同之处在于我有一个.exe并且这个问题似乎是为了回答它.dlls: 为商店构建通用应用程序时出错:“清单引用文件’MyAppName.dll’,它不是有效负载的一部分。” (更新UWP工具似乎没有解决它。)

DataGrid的CellEditingTemplate并专注于编辑模式

当自定义列提供CellTemplate和CellEditingTemplate时,我遇到了WPFToolkit DataGrid的问题。 如果你看一下下面,你会看到我的编辑模板有一个CheckBox 。 在function意义上一切都很好,但是当点击F2来编辑单元格时,还必须点击TAB才能使CheckBox获得焦点。 理想情况下,人们会点击F2和SPACE来切换值。 目前,必须打F2,TAB,SPACE。 我试过设置TabIndex无济于事。 我的想法已经不多了。

适用于第一个孩子的风格?

有没有办法将样式应用于容器的第一个(或最后一个或第n个)子项(包含子项的任何东西)? 我正在尝试自定义选项卡项的外观,以便第一个选项卡的边框半径与其他项不同。 这就是我现在拥有的: