Many new plays

This commit is contained in:
2020-02-18 14:57:55 +01:00
parent ef501d30ae
commit 2467cad2a1
19 changed files with 2334 additions and 24 deletions

View File

@ -0,0 +1,39 @@
using System;
using System.Windows;
using System.Windows.Controls;
namespace LsBricks.Controls
{
/// <summary>
/// Selects the right template on base of value-type.
/// </summary>
public class PropertyDataTemplateSelector : DataTemplateSelector
{
/// <summary>
/// Default data template. (currently Textbox)
/// </summary>
public DataTemplate DefaultDataTemplate { private get; set; }
/// <summary>
/// Data template for boolean. (currently Checkbox)
/// </summary>
public DataTemplate BooleanDataTemplate { private get; set; }
/// <summary>
/// Data template for enums. (currently Combobox)
/// </summary>
public DataTemplate EnumComboBoxDataTemplate { private get; set; }
/// <inheritdoc />
public override DataTemplate SelectTemplate(object item, DependencyObject container)
{
return item switch
{
bool _ => BooleanDataTemplate,
Enum _ => EnumComboBoxDataTemplate,
UIElement _ => null,
_ => DefaultDataTemplate
};
}
}
}