Files
Shrlalgo.RvKits/ShrlAlgoToolkit.RevitAddins/Windows/MessageWin.xaml
2025-04-24 20:56:44 +08:00

59 lines
3.1 KiB
XML

<ui:FluentWindowEx
Height="450"
Title="{Binding WinTitle}"
Width="800"
d:DataContext="{d:DesignInstance Type=local1:MessageViewModel}"
mc:Ignorable="d"
x:Class="ShrlAlgoToolkit.RevitAddins.Windows.MessageWin"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:b="http://schemas.microsoft.com/xaml/behaviors"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:local1="clr-namespace:ShrlAlgoToolkit.RevitAddins.Windows"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:ui="https://github.com/ShrlAlgo/WPFluent"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<Window.Resources>
<ResourceDictionary Source="pack://application:,,,/ShrlAlgoToolkit.RevitAddins;component/WPFUI.xaml" />
</Window.Resources>
<!--<Window.DataContext>
<local:ErrorResolveViewModel />
</Window.DataContext>-->
<ui:StackPanel Margin="5" Spacing="5">
<DataGrid
AutoGenerateColumns="False"
CanUserAddRows="False"
IsReadOnly="True"
ItemsSource="{Binding ErrorModels}"
ToolTip="双击行可快速定位"
ui:StackPanel.Fill="Fill">
<b:Interaction.Triggers>
<b:EventTrigger EventName="MouseDoubleClick">
<b:InvokeCommandAction Command="{Binding ShowElementCommand}" CommandParameter="{Binding SelectedItem, RelativeSource={RelativeSource Mode=FindAncestor, AncestorType=DataGrid}}" />
</b:EventTrigger>
</b:Interaction.Triggers>
<DataGrid.Columns>
<DataGridTextColumn Binding="{Binding Element.Category.Name}" Header="类别名称" />
<DataGridTextColumn Binding="{Binding Element.Name}" Header="元素名称" />
<DataGridTextColumn Binding="{Binding Host.Name}" Header="主体" />
<DataGridTextColumn Binding="{Binding Element.Id}" Header="元素Id" />
<DataGridTextColumn Binding="{Binding ErrorMessage}" Header="错误信息" />
<DataGridTemplateColumn Header="操作">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<!-- 按钮参数绑定到当前行的绑定的Item -->
<Button
Command="{Binding DataContext.ShowElementCommand, RelativeSource={RelativeSource Mode=FindAncestor, AncestorType=DataGrid}}"
CommandParameter="{Binding}"
Content="定位构件" />
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
</DataGrid.Columns>
</DataGrid>
<ui:StackPanel Grid.Row="1" Orientation="Horizontal">
<TextBox Text="注:错误需人处理、或无法处理" ui:StackPanel.Fill="Fill" />
<TextBlock Text="{Binding Count, StringFormat=错误数量:{0}}" />
<TextBlock Text="{Binding Footer}" />
</ui:StackPanel>
</ui:StackPanel>
</ui:FluentWindowEx>