C# NavigationViewItem中的自定义属性
我正在NavigationViewItem中为通知创建一个新网格。但我不明白如何创造一个 要使用的属性 我创建了设计,但文本已分配给所有项目。 我想控制通知的属性(可见和文本) 我如何管理这个? 任何帮助都将不胜感激C# NavigationViewItem中的自定义属性,c#,xaml,uwp,navigationview,C#,Xaml,Uwp,Navigationview,我正在NavigationViewItem中为通知创建一个新网格。但我不明白如何创造一个 要使用的属性 我创建了设计,但文本已分配给所有项目。 我想控制通知的属性(可见和文本) 我如何管理这个? 任何帮助都将不胜感激 <Grid Visibility="Visible" CornerRadius="5, 5, 5, 5" HorizontalAlignment="Right" Width="30" Background="#11FFFFFF" Opacity="1" Height="24
<Grid Visibility="Visible" CornerRadius="5, 5, 5, 5" HorizontalAlignment="Right" Width="30" Background="#11FFFFFF" Opacity="1" Height="24" Margin="0,0,15,0">
<TextBlock Text="17" VerticalAlignment="Center" HorizontalAlignment="Center" Margin="0,0,0,1" Foreground="#FFC5C5C5"/>
</Grid>
NavigationViewItem中的自定义属性
默认的NavigationViewItem
不包含Notification
属性。您可以使用TempateControl自定义NavigationViewItem
,但它很复杂。使用IValueConverter
处理Visibility
是一种简单的实现方法
<Grid
Width="200"
Height="24"
Margin="0,0,15,0"
HorizontalAlignment="Right"
Background="#11FFFFFF"
CornerRadius="5, 5, 5, 5"
Opacity="1"
Visibility="{Binding MessgeCount, Converter={StaticResource visibilityConverter}}"
>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="3*" />
<ColumnDefinition Width="1*" />
</Grid.ColumnDefinitions>
<TextBlock Text="{Binding Name}" />
<TextBlock
Grid.Column="1"
Margin="0,0,0,1"
HorizontalAlignment="Right"
VerticalAlignment="Center"
Foreground="#FFC5C5C5"
Text="{Binding MessgeCount}"
/>
</Grid>
模型类
public class Category : CategoryBase
{
public string Name { get; set; }
public string Tooltip { get; set; }
public Symbol Glyph { get; set; }
public bool IsEnabled { get; set; }
public int MessgeCount { get; set; }
}
这是您可以使用的代码示例 当然可以。我把代码放在一个文本文件中,并使用GoogleDrive,因为这里有一个限制。链接:
public class Category : CategoryBase
{
public string Name { get; set; }
public string Tooltip { get; set; }
public Symbol Glyph { get; set; }
public bool IsEnabled { get; set; }
public int MessgeCount { get; set; }
}