MainWindow.xaml 9.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166
  1. <Window x:Class="vCloud.GeneratePackages.Tool.MainWindow"
  2. xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
  3. xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
  4. xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
  5. xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
  6. xmlns:local="clr-namespace:vCloud.GeneratePackages.Tool" xmlns:extensions="clr-namespace:vCloud.GeneratePackages.Tool.Extensions"
  7. mc:Ignorable="d"
  8. Title="vCloud本地部署包生成工具" Height="720" Width="1024">
  9. <Grid>
  10. <Grid.RowDefinitions>
  11. <RowDefinition Height="*"/>
  12. <RowDefinition Height="Auto"/>
  13. <RowDefinition Height="Auto"/>
  14. <RowDefinition Height="Auto"/>
  15. <RowDefinition Height="Auto"/>
  16. </Grid.RowDefinitions>
  17. <Grid.ColumnDefinitions>
  18. <ColumnDefinition Width="0.7*"/>
  19. <ColumnDefinition Width="*"/>
  20. </Grid.ColumnDefinitions>
  21. <GroupBox Header="FTP" Margin="7">
  22. <Grid>
  23. <Grid.RowDefinitions>
  24. <RowDefinition Height="Auto"/>
  25. <RowDefinition Height="*"/>
  26. </Grid.RowDefinitions>
  27. <Grid>
  28. <Grid.ColumnDefinitions>
  29. <ColumnDefinition Width="Auto"/>
  30. <ColumnDefinition Width="*"/>
  31. <ColumnDefinition Width="Auto"/>
  32. </Grid.ColumnDefinitions>
  33. <TextBlock Text="Ftp地址:" Margin="7" VerticalAlignment="Center"/>
  34. <TextBox Margin="7" Grid.Column="1" Text="{Binding FtpUrl}" MinWidth="300" HorizontalAlignment="Stretch"></TextBox>
  35. <Button Margin="7" Grid.Column="2" DataContext="{Binding RefreshCommand}" Style="{StaticResource CommonButtonStyle}" HorizontalAlignment="Right">刷新</Button>
  36. </Grid>
  37. <ListBox Margin="7" Grid.Row="1" ItemsSource="{Binding Files}" SelectedItem="{Binding SelectedFile}">
  38. <ListBox.ItemTemplate>
  39. <DataTemplate>
  40. <StackPanel Orientation="Horizontal">
  41. <Image Margin="2,0" Width="16" Source="{Binding ZipFileIcon, Source={x:Static local:AppManager.Instance}}"/>
  42. <TextBlock Text="{Binding Name}"/>
  43. </StackPanel>
  44. </DataTemplate>
  45. </ListBox.ItemTemplate>
  46. </ListBox>
  47. </Grid>
  48. </GroupBox>
  49. <!--<Button Grid.Row="1"
  50. HorizontalAlignment="Left"
  51. Margin="14,7,7,7"
  52. Width="200"
  53. Style="{StaticResource WarningButtonStyle}"
  54. Click="Button_Click">填写客户端更新信息</Button>-->
  55. <GroupBox Grid.Row="1" Grid.ColumnSpan="2" Header="请选择要发布的安装包">
  56. <ItemsControl DataContext="{Binding UpdatePackageInfo}"
  57. ItemsSource="{Binding PackageInfos}" >
  58. <ItemsControl.ItemsPanel>
  59. <ItemsPanelTemplate>
  60. <WrapPanel/>
  61. </ItemsPanelTemplate>
  62. </ItemsControl.ItemsPanel>
  63. <ItemsControl.ItemTemplate>
  64. <DataTemplate>
  65. <Border Margin="7"
  66. CornerRadius="4"
  67. BorderBrush="#d6e9c6"
  68. BorderThickness="1">
  69. <Grid>
  70. <Grid.RowDefinitions>
  71. <RowDefinition Height="Auto" />
  72. <RowDefinition Height="*"/>
  73. </Grid.RowDefinitions>
  74. <Border Name="header" Background="#dff0d8" BorderBrush="#d6e9c6" BorderThickness="0,0,0,1" >
  75. <StackPanel Orientation="Horizontal" Margin="7">
  76. <TextBlock Text="{Binding PackageType}" FontWeight="Bold" Foreground="#3c763d" />
  77. <CheckBox IsChecked="{Binding IsPublic}">
  78. <CheckBox.Style>
  79. <Style TargetType="CheckBox">
  80. <Setter Property="Content" Value="发布"/>
  81. <Setter Property="Margin" Value="7,0"/>
  82. <Setter Property="Foreground" Value="#3c763d"/>
  83. <Style.Triggers>
  84. <Trigger Property="IsChecked" Value="False">
  85. <Setter Property="Content" Value="不发布"/>
  86. </Trigger>
  87. </Style.Triggers>
  88. </Style>
  89. </CheckBox.Style>
  90. </CheckBox>
  91. </StackPanel>
  92. </Border>
  93. </Grid>
  94. </Border>
  95. </DataTemplate>
  96. </ItemsControl.ItemTemplate>
  97. </ItemsControl>
  98. </GroupBox>
  99. <GroupBox Grid.Row="2" Grid.ColumnSpan="2" Header="特殊选项">
  100. <Grid>
  101. <Grid.RowDefinitions>
  102. <RowDefinition Height="Auto" />
  103. </Grid.RowDefinitions>
  104. <Grid.ColumnDefinitions>
  105. <ColumnDefinition Width="350" />
  106. <ColumnDefinition Width="Auto" />
  107. <ColumnDefinition Width="Auto" />
  108. <ColumnDefinition Width="300" />
  109. </Grid.ColumnDefinitions>
  110. <Border Name="header" Background="#dff0d8" BorderBrush="#d6e9c6" BorderThickness="0,0,0,1" CornerRadius="4">
  111. <StackPanel Orientation="Horizontal" Margin="7">
  112. <CheckBox IsChecked="{Binding IsNeedRemoteDeployment,Mode=TwoWay}">
  113. <CheckBox.Style>
  114. <Style TargetType="CheckBox">
  115. <Setter Property="Content" Value="支持远程部署"/>
  116. <Setter Property="Margin" Value="7,0"/>
  117. <Setter Property="Foreground" Value="#3c763d"/>
  118. <Setter Property="FontWeight" Value="Bold" />
  119. </Style>
  120. </CheckBox.Style>
  121. </CheckBox>
  122. <CheckBox IsChecked="{Binding PackageClientData,Mode=TwoWay}">
  123. <CheckBox.Style>
  124. <Style TargetType="CheckBox">
  125. <Setter Property="Content" Value="打包客户端文件(仅本地部署时勾选)"/>
  126. <Setter Property="Margin" Value="7,0"/>
  127. <Setter Property="Foreground" Value="#3c763d"/>
  128. <Setter Property="FontWeight" Value="Bold" />
  129. </Style>
  130. </CheckBox.Style>
  131. </CheckBox>
  132. </StackPanel>
  133. </Border>
  134. <TextBlock Text="新盒子版本:" Grid.Column="2" HorizontalAlignment="Center"/>
  135. <TextBox Grid.Column="3" Text="{Binding WindowSonoPostVersion}" Margin="0,-2,14,15"/>
  136. </Grid>
  137. </GroupBox>
  138. <GroupBox Header="Log Info" Grid.Column="1" Margin="7">
  139. <Grid>
  140. <Grid.RowDefinitions>
  141. <RowDefinition Height="Auto"/>
  142. <RowDefinition/>
  143. </Grid.RowDefinitions>
  144. <Button HorizontalAlignment="Right" Margin="7" Content="清理日志" Command="{Binding ClearLogCommand}" Style="{StaticResource CommonButtonStyle}"/>
  145. <Button HorizontalAlignment="Left" Margin="7" Content="重试上传" Command="{Binding RetryUploadCommand}" Style="{StaticResource CommonButtonStyle}"/>
  146. <Button HorizontalAlignment="Left" Margin="100,7,7,7" Content="打开失败目录" Command="{Binding OpenFilesCommand}" Style="{StaticResource CommonButtonStyle}"/>
  147. <TextBlock Text="当前上传失败数目:" Margin="200,7,7,7" VerticalAlignment="Center"/>
  148. <TextBlock Text="{Binding FailedNum}" Margin="330,7,7,7" VerticalAlignment="Center"/>
  149. <ListBox Grid.Row="1" Margin="7" x:Name="logList" ItemsSource="{Binding LogItems}" ScrollViewer.HorizontalScrollBarVisibility="Disabled">
  150. <ListBox.ItemTemplate>
  151. <DataTemplate >
  152. <TextBlock Text="{Binding Content}" TextWrapping="Wrap" Foreground="{Binding LogLevel, Converter={extensions:LogLevelToColorConvertExtension}}" />
  153. </DataTemplate>
  154. </ListBox.ItemTemplate>
  155. </ListBox>
  156. </Grid>
  157. </GroupBox>
  158. <StackPanel Grid.Row="3" Orientation="Horizontal" Margin="7" Grid.ColumnSpan="2">
  159. <Button Margin="7" DataContext="{Binding GenerateCommand}" Style="{StaticResource CommonButtonStyle}">生成</Button>
  160. <TextBlock Margin="7,7,7,0" Text="生成路径:" VerticalAlignment="Center"/>
  161. <TextBlock Margin="7" VerticalAlignment="Center"><Hyperlink Command="{Binding OpenOutputDirCommand}"><TextBlock Text="{Binding OutputDir}"/></Hyperlink></TextBlock>
  162. </StackPanel>
  163. </Grid>
  164. </Window>