Files
BeWoPlaner/BeWo/View/BeWoFileView.xaml
Rene Evertz b9d557642c AiRoutinen View+AddEditDelete
---

Wer reitet so spät durch Nacht und Wind?
Es ist der Vater mit seinem Kind;
Er hat den Knaben wohn in dem Arm,
Er faβt ihn sicher, er hält ihn warm.
2026-05-06 15:57:24 +02:00

277 lines
12 KiB
XML

<localView:BeWoView
x:Class="BeWo.View.BeWoFileView"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:diagnostics="clr-namespace:System.Diagnostics;assembly=WindowsBase"
xmlns:dxg="http://schemas.devexpress.com/winfx/2008/xaml/grid"
xmlns:localView="clr-namespace:BeWo.View"
xmlns:localViewModel="clr-namespace:BeWo.ViewModel"
xmlns:uc="clr-namespace:BeWo.Controls;assembly=BeWo.Controls"
Width="Auto"
Height="Auto"
HorizontalAlignment="Stretch"
VerticalAlignment="Stretch"
Focusable="True">
<localView:BeWoView.Resources>
<localView:DeleteButtonVisibilityConverter x:Key="DeleteButtonVisibilityConverter" />
<ContextMenu
x:Key="cm"
MenuItem.Click="ContextMenu_Click"
Opened="ContextMenu_Opened">
<MenuItem Header="Neu">
<MenuItem.Icon>
<Image Source="..\Ressources\Icons\Add24.png" />
</MenuItem.Icon>
</MenuItem>
<MenuItem Header="Umbenennen">
<MenuItem.Icon>
<Image Source="..\Ressources\Icons\Rename24.png" />
</MenuItem.Icon>
</MenuItem>
<Separator />
<MenuItem Header="Löschen">
<MenuItem.Icon>
<Image Source="..\Ressources\Icons\Delete24.png" />
</MenuItem.Icon>
</MenuItem>
<Separator Tag="Vorlage" />
<MenuItem Header="Neues Dokument aus Vorlage erstellen" Tag="Vorlage">
<MenuItem.Icon>
<Image
Width="24"
Height="24"
Source="..\Ressources\Icons\DocumentWithAdd2.png" />
</MenuItem.Icon>
</MenuItem>
</ContextMenu>
<HierarchicalDataTemplate
x:Key="test"
DataType="{x:Type localViewModel:BeWoFolderVM}"
ItemsSource="{Binding SubFolders}">
<StackPanel ContextMenu="{StaticResource cm}" Orientation="Horizontal">
<Image
Name="img"
Width="20"
Height="20"
Source="..\Ressources\Icons\Folder.png"
Stretch="Fill" />
<TextBox
Padding="2,1"
Background="Transparent"
BorderThickness="0"
Cursor="Arrow"
IsReadOnly="True"
KeyDown="TextBox_KeyDown"
LostFocus="TextBox_LostFocus"
Text="{Binding Path=Name}" />
</StackPanel>
</HierarchicalDataTemplate>
</localView:BeWoView.Resources>
<Grid>
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="*" />
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<GroupBox
x:Name="GroupBoxDateiHochladen"
Grid.ColumnSpan="2"
Padding="5"
Header="Neue Datei hochladen"
Style="{StaticResource ObjectEditGroupBox}">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="*" />
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="*" />
<ColumnDefinition Width="Auto" />
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
</Grid.RowDefinitions>
<Label Grid.Row="1" Content="Datei" />
<uc:PopUpEdit
Name="popupedit_file"
Grid.Row="1"
Grid.Column="1"
Height="23"
Margin="3"
DeleteButtonVisibility="Collapsed"
IsReadOnly="True"
PopUpClick="popupedit_file_PopUpClick" />
<Label
Grid.Row="1"
Grid.Column="2"
Content="Beschreibung" />
<TextBox
Name="textbox_fileNotice"
Grid.Row="1"
Grid.Column="3"
Height="23"
Margin="3" />
<Button
Name="button_uploadDocument"
Grid.Row="1"
Grid.Column="4"
Height="25"
Margin="3"
Click="button_uploadDocument_Click"
Content="Dokument hochladen"
IsEnabled="False" />
<ProgressBar
Name="progressbar_upload"
Grid.Row="2"
Grid.ColumnSpan="5"
Height="20"
Margin="3"
Maximum="1"
Minimum="0" />
<Label
Name="text_progress"
Grid.Row="2"
Grid.ColumnSpan="5"
HorizontalAlignment="Center"
VerticalAlignment="Center" />
</Grid>
</GroupBox>
<TreeView
x:Name="treeview"
Grid.Row="1"
MinWidth="200"
Margin="5,3,2,5"
Foreground="Aqua"
ItemTemplate="{StaticResource test}"
ItemsSource="{Binding}"
PreviewMouseDown="TreeViewItem_PreviewMouseRightButtonDown"
VirtualizingStackPanel.IsVirtualizing="False" />
<dxg:GridControl
x:Name="datagrid_documents"
Grid.Row="1"
Grid.Column="1"
Margin="2,3,5,5"
DataSource="{Binding SelectedItem.Files, ElementName=treeview, diagnostics:PresentationTraceSources.TraceLevel=High}"
ItemsSourceChanged="Datagrid_documents_OnItemsSourceChanged">
<dxg:GridControl.Columns>
<dxg:GridColumn
Width="24"
FieldName="FileName"
FixedWidth="True"
Header=""
ReadOnly="True"
Visible="{Binding Converter={StaticResource DeleteButtonVisibilityConverter}}">
<dxg:GridColumn.CellTemplate>
<DataTemplate>
<Button
Width="18"
Height="18"
VerticalAlignment="Center"
Click="DeleteButton_Click"
Content="r"
FontFamily="Webdings" />
</DataTemplate>
</dxg:GridColumn.CellTemplate>
</dxg:GridColumn>
<dxg:GridColumn
Width="150"
AllowEditing="False"
FieldName="InsertedOn"
Header="hinterlegt am"
SortOrder="Ascending" />
<dxg:GridColumn
Width="150"
AllowEditing="False"
FieldName="InsertedBy"
Header="hinterlegt von" />
<dxg:GridColumn
Width="180"
AllowEditing="False"
FieldName="FileName"
Header="Dateiname" />
<dxg:GridColumn
Width="180"
AllowEditing="False"
FieldName="Description"
Header="Beschreibung" />
<dxg:GridColumn
x:Name="ColumnDownload"
Width="100"
MinWidth="90"
FieldName="URL"
Header="">
<dxg:GridColumn.CellTemplate>
<DataTemplate>
<TextBlock>
<Hyperlink
NavigateUri="{Binding Path=Value, Converter={StaticResource DownloadURLConverter}}"
RequestNavigate="Hyperlink_OnRequestNavigate"
TargetName="inexistent">
<TextBlock Text="herunterladen" />
</Hyperlink>
</TextBlock>
</DataTemplate>
</dxg:GridColumn.CellTemplate>
</dxg:GridColumn>
</dxg:GridControl.Columns>
<dxg:GridControl.View>
<dxg:TableView
x:Name="DocumentTableView"
AutoWidth="false"
NavigationStyle="Cell"
ShowGroupPanel="False"
ShowGroupedColumns="false"
ShowTotalSummary="False" />
</dxg:GridControl.View>
</dxg:GridControl>
</Grid>
<Canvas>
<Grid x:Name="CursorControl" Visibility="Visible">
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
</Grid.RowDefinitions>
<Border Background="AliceBlue" Opacity="0.75">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="Auto" />
</Grid.ColumnDefinitions>
<Image x:Name="imageFolder" Source="..\Ressources\Icons\Folder.png" />
<Image x:Name="imageFile" Source="..\Ressources\Icons\Document48.png" />
<TextBlock
x:Name="labelFrom"
Grid.Column="1"
Margin="3"
Text="Datei xyz.txt" />
</Grid>
</Border>
<TextBlock
x:Name="labelTo"
Grid.Row="1"
Grid.ColumnSpan="2"
Margin="3"
Foreground="Blue"
Opacity="1"
Text="-&gt; Nach verschieben" />
</Grid>
</Canvas>
</Grid>
</localView:BeWoView>