XFE Git
XFE Studio Git
Git 首页 全局搜索
XFE 主站 文档 NuGet

XFEWarframe

【WinUI】基于Warframe游戏本体的公开服务器以及安装器

公开
关注 0 Fork 0 Star 0
UTF-8
<Page xmlns:loc="using:XFEWarframe.Desktop.Editing" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:models="using:XFEWarframe.Desktop.Editing" xmlns:ct="using:CommunityToolkit.WinUI.Controls" x:Class="XFEWarframe.Admin.Views.RivenPage">
  <Grid>
    <ScrollViewer VerticalScrollBarVisibility="Auto">
      <ContentControl IsEnabled="{x:Bind ViewModel.IsIdle, Mode=OneWay}" HorizontalContentAlignment="Stretch">
        <StackPanel Padding="28,24,28,32" Spacing="18">
          <TextBlock Text="{loc:Translate Key=ui_d59bc32591fc167e}" Style="{StaticResource PageTitleStyle}"/>
          <TextBlock Text="{loc:Translate Key=ui_2ac8b15b7a978667}" Style="{StaticResource MutedTextStyle}"/>
          <Border Style="{StaticResource OrbitCard}">
            <StackPanel Spacing="12">
              <AutoSuggestBox Header="{loc:Translate Key=ui_991e63fe292063b6}" loc:Suggestions.Candidates="{x:Bind ViewModel.Accounts}" DisplayMemberPath="Label" loc:Suggestions.SelectedItem="{x:Bind ViewModel.SelectedAccount, Mode=TwoWay}" HorizontalAlignment="Stretch" loc:Suggestions.IsSelectionRequired="True"/>
              <AutoSuggestBox Header="{loc:Translate Key=ui_23495b20beede565}" loc:Suggestions.Provider="{x:Bind ViewModel.OwnedSuggestions}" loc:Suggestions.Context="{x:Bind ViewModel.SelectedAccount, Mode=OneWay}" DisplayMemberPath="Name" loc:Suggestions.SelectedItem="{x:Bind ViewModel.SelectedOwned, Mode=TwoWay}" HorizontalAlignment="Stretch" loc:Suggestions.IsSelectionRequired="True"/>
              <StackPanel Orientation="Horizontal" Spacing="10">
                <Button Content="{loc:Translate Key=ui_e3dc892259a93f60}" Command="{x:Bind ViewModel.RefreshOwnedCommand}"/>
                <Button Content="{loc:Translate Key=ui_77a9ed93daa0c878}" Click="EditRiven_Click"/>
                <Button Content="{loc:Translate Key=ui_50ef2f4cf6a46924}" Click="NewRiven_Click"/>
                <Button Content="{loc:Translate Key=ui_c9b9ae7a61444ab7}" Command="{x:Bind ViewModel.PreviousCommand}"/>
                <Button Content="{loc:Translate Key=ui_8a8542f6964852dc}" Command="{x:Bind ViewModel.NextCommand}"/>
                <Button Content="{loc:Translate Key=ui_d69cccd1503d332c}" Command="{x:Bind ViewModel.ExportCommand}"/>
              </StackPanel>
              <TextBlock Text="{x:Bind ViewModel.PageLabel, Mode=OneWay}" Style="{StaticResource MutedTextStyle}"/>
            </StackPanel>
          </Border>
          <loc:FormDialogButton Content="{loc:Translate Key=ui_ff151ae1e4b178e9}" DialogTitle="{x:Bind ViewModel.EditingLabel, Mode=OneWay}" HorizontalAlignment="Left" PrimaryCommand="{x:Bind ViewModel.UpdateCommand}" PrimaryText="{x:Bind ViewModel.UpdateButtonText, Mode=OneWay}" SecondaryCommand="{x:Bind ViewModel.CreateCommand}" SecondaryText="{x:Bind ViewModel.CreateButtonText, Mode=OneWay}" x:Name="RivenEditorButton" ErrorText="{x:Bind ViewModel.LastError, Mode=OneWay}" CanSubmit="{x:Bind ViewModel.CanUpdate, Mode=OneWay}" IsWorking="{x:Bind ViewModel.IsBusy, Mode=OneWay}">
            <loc:FormDialogButton.Form>
              <StackPanel Spacing="16">
                <TextBlock Text="{x:Bind ViewModel.EditingLabel, Mode=OneWay}" Style="{StaticResource MutedTextStyle}"/>
                <TextBlock Text="{x:Bind ViewModel.Name, Mode=OneWay}" FontSize="26" FontWeight="SemiBold"/>
                <Grid ColumnSpacing="14">
                  <Grid.ColumnDefinitions>
                    <ColumnDefinition Width="*"/>
                    <ColumnDefinition Width="Auto"/>
                  </Grid.ColumnDefinitions>
                  <AutoSuggestBox Header="{loc:Translate Key=ui_d427148409e625ff}" loc:Suggestions.Candidates="{x:Bind ViewModel.Families}" DisplayMemberPath="Label" loc:Suggestions.SelectedItem="{x:Bind ViewModel.Family, Mode=TwoWay}" HorizontalAlignment="Stretch" loc:Suggestions.IsSelectionRequired="True"/>
                  <Button Grid.Column="1" Content="{loc:Translate Key=ui_c6c3c4c3befa56e2}" Command="{x:Bind ViewModel.CatalogCommand}" VerticalAlignment="Bottom"/>
                </Grid>
                <ct:SettingsCard Header="{loc:Translate Key=ui_1f564fc88ad07499}">
                  <ToggleSwitch IsOn="{x:Bind ViewModel.Veiled, Mode=TwoWay}" OnContent="{loc:Translate Key=ui_f7fba8e846530d32}" OffContent="{loc:Translate Key=ui_2836e348e9935061}" AutomationProperties.Name="{loc:Translate Key=ui_1f564fc88ad07499}"/>
                </ct:SettingsCard>
                <StackPanel Spacing="12" Visibility="{x:Bind ViewModel.VeiledVisibility, Mode=OneWay}">
                  <AutoSuggestBox Header="{loc:Translate Key=ui_b2d8a55d1a3e6b49}" loc:Suggestions.Candidates="{x:Bind ViewModel.Challenges}" DisplayMemberPath="Label" loc:Suggestions.SelectedItem="{x:Bind ViewModel.SelectedChallenge, Mode=TwoWay}" HorizontalAlignment="Stretch" loc:Suggestions.IsSelectionRequired="True"/>
                  <AutoSuggestBox Header="{loc:Translate Key=ui_8fd309850644d9d6}" loc:Suggestions.Candidates="{x:Bind ViewModel.Complications}" DisplayMemberPath="Label" loc:Suggestions.SelectedItem="{x:Bind ViewModel.SelectedComplication, Mode=TwoWay}" HorizontalAlignment="Stretch" loc:Suggestions.IsSelectionRequired="True"/>
                  <Grid ColumnSpacing="12">
                    <Grid.ColumnDefinitions>
                      <ColumnDefinition Width="*"/>
                      <ColumnDefinition Width="*"/>
                    </Grid.ColumnDefinitions>
                    <NumberBox Header="{loc:Translate Key=ui_4925ae37b358845e}" Value="{x:Bind ViewModel.Required, Mode=TwoWay}" Minimum="0.01" Maximum="1000000000"/>
                    <NumberBox Grid.Column="1" Header="{loc:Translate Key=ui_c827dc3403852abd}" Value="{x:Bind ViewModel.Progress, Mode=TwoWay}" Minimum="0" Maximum="{x:Bind ViewModel.Required, Mode=OneWay}"/>
                  </Grid>
                  <CheckBox Content="{loc:Translate Key=ui_b5142b22b9f4784d}" IsChecked="{x:Bind ViewModel.Sentinel, Mode=TwoWay}"/>
                </StackPanel>
                <StackPanel Spacing="12" Visibility="{x:Bind ViewModel.RevealedVisibility, Mode=OneWay}">
                  <AutoSuggestBox Header="{loc:Translate Key=ui_03549b4778576d40}" loc:Suggestions.Candidates="{x:Bind ViewModel.Weapons}" DisplayMemberPath="Label" loc:Suggestions.SelectedItem="{x:Bind ViewModel.Weapon, Mode=TwoWay}" HorizontalAlignment="Stretch" loc:Suggestions.IsSelectionRequired="True"/>
                  <Grid ColumnSpacing="12">
                    <Grid.ColumnDefinitions>
                      <ColumnDefinition Width="*"/>
                      <ColumnDefinition Width="*"/>
                      <ColumnDefinition Width="*"/>
                      <ColumnDefinition Width="*"/>
                    </Grid.ColumnDefinitions>
                    <NumberBox Header="{loc:Translate Key=ui_8eb4855d5bf6ea97}" Value="{x:Bind ViewModel.Disposition, Mode=TwoWay}" Minimum="0.01" Maximum="10" SmallChange="0.05"/>
                    <NumberBox Grid.Column="1" Header="{loc:Translate Key=ui_3377171738070045}" Value="{x:Bind ViewModel.Level, Mode=TwoWay}" Minimum="0" Maximum="8"/>
                    <NumberBox Grid.Column="2" Header="{loc:Translate Key=ui_d0041f9840d9390a}" Value="{x:Bind ViewModel.Mastery, Mode=TwoWay}" Minimum="0" Maximum="1000"/>
                    <NumberBox Grid.Column="3" Header="{loc:Translate Key=ui_ac83b7162ca8347d}" Value="{x:Bind ViewModel.Rerolls, Mode=TwoWay}" Minimum="0" Maximum="2147483647"/>
                  </Grid>
                  <AutoSuggestBox Header="{loc:Translate Key=ui_4c4f0019481d1ec5}" loc:Suggestions.Candidates="{x:Bind ViewModel.Polarities}" loc:Suggestions.SelectedItem="{x:Bind ViewModel.Polarity, Mode=TwoWay}" HorizontalAlignment="Stretch" loc:Suggestions.IsSelectionRequired="True"/>
                  <ItemsControl ItemsSource="{x:Bind ViewModel.Rows}">
                    <ItemsControl.ItemTemplate>
                      <DataTemplate x:DataType="models:RivenStatRow">
                        <Border Padding="12" Margin="0,0,0,10" BorderBrush="{ThemeResource CardStrokeColorDefaultBrush}" BorderThickness="1" CornerRadius="8">
                          <StackPanel Spacing="10">
                            <AutoSuggestBox Header="{loc:Translate Key=ui_aad9c1ad8a3124c6}" loc:Suggestions.Candidates="{x:Bind Tags}" loc:Suggestions.SelectedItem="{x:Bind SelectedTag, Mode=TwoWay}" HorizontalAlignment="Stretch" loc:Suggestions.IsSelectionRequired="True">
                              <AutoSuggestBox.ItemTemplate>
                                <DataTemplate x:DataType="models:RivenStatOption">
                                  <TextBlock Text="{x:Bind DisplayText, Mode=OneWay}" models:RivenStatText.Tone="{x:Bind Tone, Mode=OneWay}" TextWrapping="Wrap"/>
                                </DataTemplate>
                              </AutoSuggestBox.ItemTemplate>
                            </AutoSuggestBox>
                            <Grid ColumnSpacing="10">
                              <Grid.ColumnDefinitions>
                                <ColumnDefinition Width="Auto"/>
                                <ColumnDefinition Width="*"/>
                                <ColumnDefinition Width="*"/>
                                <ColumnDefinition Width="Auto"/>
                              </Grid.ColumnDefinitions>
                              <CheckBox Content="{loc:Translate Key=ui_a26cd029bfe2f67f}" IsChecked="{x:Bind Negative, Mode=TwoWay}"/>
                              <ComboBox Grid.Column="1" ItemsSource="{x:Bind Modes}" SelectedIndex="{x:Bind ModeIndex, Mode=TwoWay}" HorizontalAlignment="Stretch"/>
                              <NumberBox Grid.Column="2" Value="{x:Bind Value, Mode=TwoWay}"/>
                              <Button Grid.Column="3" Content="{loc:Translate Key=ui_6135d4159e892541}" Command="{x:Bind RemoveCommand}"/>
                            </Grid>
                            <TextBlock Text="{x:Bind Result, Mode=OneWay}" models:RivenStatText.Tone="{x:Bind Tone, Mode=OneWay}" TextWrapping="Wrap"/>
                            <TextBlock Text="{x:Bind Quality, Mode=OneWay}" Style="{StaticResource MutedTextStyle}"/>
                          </StackPanel>
                        </Border>
                      </DataTemplate>
                    </ItemsControl.ItemTemplate>
                  </ItemsControl>
                  <StackPanel Orientation="Horizontal" Spacing="10">
                    <Button Content="{loc:Translate Key=ui_21685f13464b057a}" Command="{x:Bind ViewModel.AddPositiveCommand}"/>
                    <Button Content="{loc:Translate Key=ui_1d2abface3fc13d6}" Command="{x:Bind ViewModel.AddNegativeCommand}"/>
                    <Button Content="{loc:Translate Key=ui_bc8900d38b4320fb}" Command="{x:Bind ViewModel.CalculateCommand}" Style="{StaticResource OrbitAccentButtonStyle}"/>
                  </StackPanel>
                </StackPanel>
                <Button Content="{loc:Translate Key=ui_07608f48bc5f73cc}" Command="{x:Bind ViewModel.CalculateCommand}" Visibility="{x:Bind ViewModel.VeiledVisibility, Mode=OneWay}"/>
              </StackPanel>
            </loc:FormDialogButton.Form>
          </loc:FormDialogButton>
          <loc:FormDialogButton Content="{loc:Translate Key=ui_abbda66d0d4888a3}" DialogTitle="{loc:Translate Key=ui_83756378fe105866}" HorizontalAlignment="Left" PrimaryCommand="{x:Bind ViewModel.ImportCommand}" PrimaryText="{loc:Translate Key=ui_576d81bb0631b165}" ErrorText="{x:Bind ViewModel.LastError, Mode=OneWay}" IsWorking="{x:Bind ViewModel.IsBusy, Mode=OneWay}">
            <loc:FormDialogButton.Form>
              <StackPanel Spacing="12">
                <TextBox Text="{x:Bind ViewModel.Fingerprint, Mode=TwoWay}" AcceptsReturn="True" MaxLength="100000" Height="220" FontFamily="Cascadia Code" ScrollViewer.VerticalScrollBarVisibility="Auto"/>
              </StackPanel>
            </loc:FormDialogButton.Form>
          </loc:FormDialogButton>
        </StackPanel>
      </ContentControl>
    </ScrollViewer>
    <Border Background="{ThemeResource ApplicationPageBackgroundThemeBrush}" Opacity="0.92" Visibility="{x:Bind ViewModel.LoadingVisibility, Mode=OneWay}">
      <StackPanel HorizontalAlignment="Center" VerticalAlignment="Center" Spacing="14">
        <ProgressRing IsActive="{x:Bind ViewModel.IsBusy, Mode=OneWay}" Width="40" Height="40"/>
        <TextBlock Text="{loc:Translate Key=ui_d7249d348dd84ae6}"/>
      </StackPanel>
    </Border>
  </Grid>
</Page>