问题标签 [xaml]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
10219 浏览

c# - Setting Focus on a Control within a ControlTemplate in WPF

In an application I'm working on, we have a bunch of custom controls with their ControlTemplates defined in Generic.xaml.

For instance, our custom textbox would look similar to this:

In our application, we need to be able to programatically set the focus on a particular control within the ControlTemplate.

Within our C# code, we can get to the particular "FieldTextBox" based on our data. Once we have the correct FieldTextBox, we need to be able to set the focus on the actual TextBox contained within the ControlTemplate.

The best solution I've come up with is to set a name on the primary control in each control template (in this case it's the TextBox), such as "FocusableControl."

My code (contained in the code-behind for the FieldTextBox) to then set focus on the control would be:

This solution works. However, does anyone else know of a solution that would be more efficient than this?

0 投票
3 回答
4337 浏览

.net - 松散 XAML 的限制是什么?

我一直在试验 WPF 并在 Web 浏览器中呈现严格的 XAML 标记,也称为松散 XAML(在此处此处进行解释)。

我觉得它对显示静态内容最有用。但是,似乎也可以绑定到 XML 数据提供者。

松散的 XAML 文件不使用应用程序编译,这会产生以下限制:

  • 他们不允许外部程序集
  • 不使用类、代码隐藏(或任何 C#)
  • 没有双向数据绑定

还有哪些额外限制?

  • 我还没有找到一种将数据绑定到数据库提供程序(SQL Server)的方法
  • 客户端计算机上是否需要 .NET Framework 才能在浏览器中呈现 XAML?
  • 搜索引擎是否能够询问 Loose XAML 以适当地对页面进行排名?

编辑:我试图将 XML 数据提供程序绑定到 Web 服务(使用这个简单的示例)并且没有成功。这些发现使我进一步研究,发现不支持:“XMLDataProvider 被设计为只读的(换句话说,它不提供提交更改的能力),并且它不能处理可能来自其他来源(如数据库记录、Web 服务消息等)的 XML 数据。” -Matthew MacDonald,专业 WPF

0 投票
1 回答
2169 浏览

visual-studio-2008 - 在 VS2008 的 XAML 编辑器中禁用 Intellisense?

有没有办法在 Visual Studio 2008 的 XAML 编辑器中禁用 Intellisense?打字时通常会消耗很大的性能,有时我会等待十秒钟或更长时间,而列表会自动弹出。

似乎在 Options->Text Editors->XAML 中,Intellisense 部分是部分不可用(灰显)。我们在完整的 XAML 视图中打开文档,并且不使用任何第三方增强功能。

太糟糕了,有时我会在其他地方打开文件并编辑我需要的内容,但我真的很想解决这个问题,所以我不必使用外部应用程序。

0 投票
2 回答
3535 浏览

silverlight - 有没有办法对从 ItemsControl 的 ItemTemplate 生成的 RadioButtons 进行分组

上面的代码是我的 ItemsControl 的 ItemTemplate,我希望所有实例化的 Radiobuttons 的行为都应该像在一个组中一样,我知道原因是因为生成的 RadioButtons 在视觉树中不相邻。

将它们组合在一起的任何解决方案或解决方法?GroupName 属性在这里也没有任何作用。

[更新] 我正在 Silverlight 中尝试这个

0 投票
1 回答
6719 浏览

c# - GridViewColumn 内容和 VerticalAlignment

我想使用 GridView 在列表视图中显示一些信息。我有几个 GridViewColumns,一切正常。

但是,希望 GridViewColumns 内容具有 VerticalAlignment(在本例中为 Top),但 gridvewcolumn 自身不提供 VerticalContentAlignment 依赖属性。使用 DisplayMemberBinding 时也无法提供 VerticalAlignment 信息。

当使用自定义 DataTemplate 作为 Celltemplate 时,我可以添加一个 VerticalAlignment="top" dp 到例如一些文本块。但是这不起作用。是否有任何“漂亮的特殊魔术”来完成这项任务?(

0 投票
8 回答
2773 浏览

wpf - 您在哪里划清代码和 XAMLin WPF 之间的界限?

我对 WPF 和 XAML 了解得越多,我就越意识到您可以在 XAML 或代码(例如 C# 代码或 VB.Net 代码)中完成几乎所有的 GUI 初始化和事件处理粘合。

我的问题是那些在 WPF 上工作了更长时间的人,最好是那些已经使用它发布应用程序的人——你在哪里找到了在 XAML 和代码之间“划清界限”的最佳位置?您是否尽可能使用 XAML?仅在哪里与非编码 UI 设计师交互?

这方面的任何提示都会对我自己和其他刚刚进入 WPF 编程并且对我们可以做出的所有选择感到瘫痪的程序员非常有帮助!

0 投票
2 回答
7412 浏览

wpf - WPF DocumentViewer Find-function 和 FixedPage 文档

.Net 包含一个很好的控件,称为DocumentViewer. 它还提供了一个子控件,用于在加载的文档中查找文本(这至少是它应该做的)。

当插入FixedPage的对象作为 的文档源时DocumentViewer,查找功能只是找不到任何东西。甚至没有一个字母。我还没有尝试过FlowDocument,因为文档DocumentViewer没有那么有用,而且网络上的资源实际上并不存在,我现在想问问 stackoverflow 社区:

让 WPF 的 Find-FunctionDocumentViewer处理FixedPage文档需要什么?

[顺便说一句,我不使用自ControlTemplates定义DocumentViewer]

0 投票
13 回答
170308 浏览

xaml - 字符串属性中的换行符

将文本设置为属性时,如何在文本中添加换行符,即:

对于我的特殊情况,将其分解为分解格式不是一种选择。我需要的是某种方式来模拟以下内容:

0 投票
5 回答
42606 浏览

c# - 我可以在 XAML(.NET 4 之前)中指定泛型类型吗?

在 XAML 中,我可以声明一个 DataTemplate,以便在显示特定类型时使用该模板。例如,此 DataTemplate 将使用 TextBlock 来显示客户的姓名:

我想知道是否可以定义一个在显示 IList<Customer> 时将使用的 DataTemplate。因此,如果 ContentControl 的内容是 ObservableCollection<Customer>,它将使用该模板。

是否可以使用 {x:Type} 标记扩展在 XAML 中声明像 IList 这样的泛型类型?

0 投票
1 回答
24633 浏览

wpf - 如何将 WPF 选项卡控制选项卡放在一边

我正在尝试在 WPF 中创建一个选项卡控件,该控件的选项卡排列在控件的右侧,文本旋转 90 度。外观类似于您可以在笔记本中购买和使用的塑料选项卡。我尝试将 TabStripPlacement 更改为 Right,但它只是将选项卡堆叠在控件的右上角 - 完全不是我的想法。