Files
YKanBan/YKanBan/Views/Dialogs/ColumnEditorDialog.axaml
T
doyaGu e3f58ce150 feat: implement board tab with dialogs, virtualized card lists and refresh-after-write
- board: columns in id order, per-column sort via config, column width presets (240/320/480) and custom 160-720
- column header new-card and edit/delete menu; card menu delete and move-to-column
- card editor as one unit of work with dirty check and discard confirmation; nested tag picker writes new tags immediately
- schema constraint violations mapped to typed exceptions and shown inside the modal
- dialog service with owner stack so nested modals center on their parent and get FlowDirection
- repository: filtered GetCards, CountCards; view-model tests
2026-10-03 03:33:25 -04:00

34 lines
1.7 KiB
XML

<dialogs:DialogWindow xmlns="https://github.com/avaloniaui"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:vm="using:YKanBan.ViewModels.Dialogs"
xmlns:dialogs="using:YKanBan.Views.Dialogs"
xmlns:lang="using:YKanBan"
x:Class="YKanBan.Views.Dialogs.ColumnEditorDialog"
x:DataType="vm:ColumnEditorDialogViewModel"
Title="{Binding Title}"
Width="440"
WindowStartupLocation="CenterOwner">
<StackPanel Margin="20" Spacing="14">
<StackPanel Spacing="4">
<TextBlock Text="{x:Static lang:Resources.Field_Title}"/>
<TextBox Text="{Binding ColumnTitle}"/>
</StackPanel>
<StackPanel Spacing="4">
<TextBlock Text="{x:Static lang:Resources.Field_Description}"/>
<TextBox Text="{Binding Description}" AcceptsReturn="True" TextWrapping="Wrap"
MinHeight="72" MaxHeight="200"/>
</StackPanel>
<TextBlock Text="{Binding ErrorMessage}" IsVisible="{Binding HasError}"
Foreground="{DynamicResource ErrorTextBrush}" TextWrapping="Wrap"/>
<StackPanel Orientation="Horizontal" HorizontalAlignment="Right" Spacing="8">
<Button Content="{x:Static lang:Resources.Common_Ok}" Command="{Binding ConfirmCommand}"
Classes="Primary" MinWidth="90" IsDefault="True"/>
<Button Content="{x:Static lang:Resources.Common_Cancel}" Command="{Binding CancelCommand}"
MinWidth="90" IsCancel="True"/>
</StackPanel>
</StackPanel>
</dialogs:DialogWindow>