【问题标题】:Xamarin Forms TemplateSelector for View用于视图的 Xamarin 表单模板选择器
【发布时间】:2017-06-30 18:07:47
【问题描述】:

我想使用 TemplateSelector 来选择视图。不适用于 ListViewItems,就像那里显示的每个示例一样,而是具有“正常”视图。所以我尝试了TemplatedViewContentPresenterContentView。但是他们都不能使用 TemplateSelector。

有什么我错过的吗?或者我该如何解决?

编辑: 我有一个 TemplateSelector,就像描述的 here 一样。现在我想将此选择器添加到某种 ViewElement 中。这就是我尝试过的:

<TemplatedView ControlTemplate="{StaticResource ViewItemTemplateSelector}"/>

<ContentPresenter Content="{StaticResource ViewItemTemplateSelector}"/>

但没有任何效果,它总是说“资源类型无效”

编辑2:

<ResourceDictionary MergedWith="dataTemplates:DataTemplates">
        <helper:ViewItemTemplateSelector x:Key="ViewItemTemplateSelector" 
                                         TextDataTemplate="{StaticResource TextDataTemplate}"/>

【问题讨论】:

  • 您是指masterdetailpage之类的东西还是?
  • 不,我只想在视图中显示一个控件。但是这个 Control 总是不同的,所以 TemplateSelector 应该选择一个匹配的 Template
  • 您也许可以扩展这些类并以这种方式使用它们?或者你可以使用资源字典
  • 我目前正在使用 ResourceDictionary,但是如何定义要从那里加载的 xaml?模板选择器无法设置
  • &lt;TemplatedView ControlTemplate="{StaticResource ViewTemplateSelector}" /&gt; => 资源类型无效

标签: c# xamarin xamarin.forms


【解决方案1】:

您是否尝试过遵循 Xamarin 的本指南? https://developer.xamarin.com/guides/xamarin-forms/application-fundamentals/templates/data-templates/selector/

希望这对你有用。

编辑: 也许另一种解决方案: 有控制模板,但我认为没有选择器。您也许可以为此使用触发器? https://developer.xamarin.com/guides/xamarin-forms/application-fundamentals/triggers/#Data_Triggers 不知道你是不是这样看

【讨论】:

  • 是的,这正是我所做的。但我不想将其添加到ListView。我希望它作为页面内视图的一部分。是否没有包含 DataTemplate 的控件?我之前在 UWP 中意识到了这一点,在那里我使用了 ContentControl 和 TemplateSelector
  • 你想在你的页面中使用什么样的视图?
  • 这取决于,这就是为什么我需要一个模板选择器。但它总是一个包含一些东西的网格
  • 如果这是一个有效的答案,不要忘记将其标记为答案;)。我希望这能解决一切,祝你好运!
  • 我认为它可以工作,所以我将其标记为解决方案。但是我通过一个新的类扩展网格以另一种方式实现了它,该网格显示了一个带有控件模板的模板视图。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-05-24
  • 2015-12-04
  • 2018-02-02
  • 2018-02-01
  • 1970-01-01
相关资源
最近更新 更多