mirror of
				https://github.com/Nioux/AideDeJeu.git
				synced 2025-10-30 23:16:09 +00:00 
			
		
		
		
	Plein de changements de pickers
This commit is contained in:
		
							parent
							
								
									f2852eee7b
								
							
						
					
					
						commit
						2ccaef236b
					
				
					 8 changed files with 350 additions and 28 deletions
				
			
		|  | @ -62,6 +62,12 @@ | ||||||
|     <Compile Update="Views\MainTabbedPage.xaml.cs"> |     <Compile Update="Views\MainTabbedPage.xaml.cs"> | ||||||
|       <DependentUpon>MainTabbedPage.xaml</DependentUpon> |       <DependentUpon>MainTabbedPage.xaml</DependentUpon> | ||||||
|     </Compile> |     </Compile> | ||||||
|  |     <Compile Update="Views\ItemPicker.xaml.cs"> | ||||||
|  |       <DependentUpon>ItemPicker.xaml</DependentUpon> | ||||||
|  |     </Compile> | ||||||
|  |     <Compile Update="Views\ItemPickerView.xaml.cs"> | ||||||
|  |       <DependentUpon>ItemPickerView.xaml</DependentUpon> | ||||||
|  |     </Compile> | ||||||
|   </ItemGroup> |   </ItemGroup> | ||||||
| 
 | 
 | ||||||
|   <ItemGroup> |   <ItemGroup> | ||||||
|  |  | ||||||
|  | @ -73,6 +73,22 @@ namespace AideDeJeu.ViewModels | ||||||
|                 } |                 } | ||||||
|             } |             } | ||||||
|         } |         } | ||||||
|  |         private AlignmentItem _SelectedAlignment = null; | ||||||
|  |         public AlignmentItem SelectedAlignment | ||||||
|  |         { | ||||||
|  |             get | ||||||
|  |             { | ||||||
|  |                 return _SelectedAlignment; | ||||||
|  |             } | ||||||
|  |             set | ||||||
|  |             { | ||||||
|  |                 SetProperty(ref _SelectedAlignment, value); | ||||||
|  |                 //if (0 <= _AlignmentSelectedIndex && _AlignmentSelectedIndex < Alignments.Result.Count) | ||||||
|  |                 //{ | ||||||
|  |                     SelectedPlayerCharacter.Alignment = SelectedAlignment; | ||||||
|  |                 //} | ||||||
|  |             } | ||||||
|  |         } | ||||||
| 
 | 
 | ||||||
|         public async Task<List<AlignmentItem>> LoadAlignmentsAsync(string alignment = null) |         public async Task<List<AlignmentItem>> LoadAlignmentsAsync(string alignment = null) | ||||||
|         { |         { | ||||||
|  | @ -181,26 +197,41 @@ namespace AideDeJeu.ViewModels | ||||||
|             set |             set | ||||||
|             { |             { | ||||||
|                 SetProperty(ref _BackgroundSelectedIndex, value); |                 SetProperty(ref _BackgroundSelectedIndex, value); | ||||||
|                 SelectedPlayerCharacter.Background = Backgrounds.Result[_BackgroundSelectedIndex]; |                 SelectedBackground = Backgrounds.Result[_BackgroundSelectedIndex]; | ||||||
|  |             } | ||||||
|  |         } | ||||||
|  | 
 | ||||||
|  |         private BackgroundItem _SelectedBackground = null; | ||||||
|  |         public BackgroundItem SelectedBackground | ||||||
|  |         { | ||||||
|  |             get | ||||||
|  |             { | ||||||
|  |                 return _SelectedBackground; | ||||||
|  |             } | ||||||
|  |             set | ||||||
|  |             { | ||||||
|  |                 SetProperty(ref _SelectedBackground, value); | ||||||
|                 SelectedBackgroundChanged(); |                 SelectedBackgroundChanged(); | ||||||
|             } |             } | ||||||
|         } |         } | ||||||
| 
 | 
 | ||||||
|         private void SelectedBackgroundChanged() |         private void SelectedBackgroundChanged() | ||||||
|         { |         { | ||||||
|             SubBackgrounds = new NotifyTaskCompletion<List<SubBackgroundItem>>(Task.Run(() => LoadSubBackgroundsAsync(SelectedPlayerCharacter.Background))); |  | ||||||
|             PersonalityTraits = new NotifyTaskCompletion<List<string>>(Task.Run(() => LoadPersonalityTraitsAsync(SelectedPlayerCharacter.Background))); |  | ||||||
|             PersonalityIdeals = new NotifyTaskCompletion<List<string>>(Task.Run(() => LoadPersonalityIdealsAsync(SelectedPlayerCharacter.Background))); |  | ||||||
|             PersonalityLinks = new NotifyTaskCompletion<List<string>>(Task.Run(() => LoadPersonalityLinksAsync(SelectedPlayerCharacter.Background))); |  | ||||||
|             PersonalityDefects = new NotifyTaskCompletion<List<string>>(Task.Run(() => LoadPersonalityDefectsAsync(SelectedPlayerCharacter.Background))); |  | ||||||
|             BackgroundSpecialties = new NotifyTaskCompletion<BackgroundSpecialtyItem>(Task.Run(() => LoadBackgroundsSpecialtiesAsync(SelectedPlayerCharacter.Background))); |  | ||||||
|             Task.Run(async () => SelectedPlayerCharacter.BackgroundSkill = await LoadSkillAsync(SelectedPlayerCharacter.Background)); |  | ||||||
|             SelectedPlayerCharacter.SubBackground = null; |             SelectedPlayerCharacter.SubBackground = null; | ||||||
|             SelectedPlayerCharacter.PersonalityTrait = null; |             SelectedPlayerCharacter.PersonalityTrait = null; | ||||||
|             SelectedPlayerCharacter.PersonalityIdeal = null; |             SelectedPlayerCharacter.PersonalityIdeal = null; | ||||||
|             SelectedPlayerCharacter.PersonalityLink = null; |             SelectedPlayerCharacter.PersonalityLink = null; | ||||||
|             SelectedPlayerCharacter.PersonalityDefect = null; |             SelectedPlayerCharacter.PersonalityDefect = null; | ||||||
|             SelectedPlayerCharacter.BackgroundSpecialty = null; |             SelectedPlayerCharacter.BackgroundSpecialty = null; | ||||||
|  |             SelectedPlayerCharacter.Background = SelectedBackground; | ||||||
|  | 
 | ||||||
|  |             SubBackgrounds = new NotifyTaskCompletion<List<SubBackgroundItem>>(Task.Run(() => LoadSubBackgroundsAsync(SelectedBackground))); | ||||||
|  |             PersonalityTraits = new NotifyTaskCompletion<List<string>>(Task.Run(() => LoadPersonalityTraitsAsync(SelectedBackground))); | ||||||
|  |             PersonalityIdeals = new NotifyTaskCompletion<List<string>>(Task.Run(() => LoadPersonalityIdealsAsync(SelectedBackground))); | ||||||
|  |             PersonalityLinks = new NotifyTaskCompletion<List<string>>(Task.Run(() => LoadPersonalityLinksAsync(SelectedBackground))); | ||||||
|  |             PersonalityDefects = new NotifyTaskCompletion<List<string>>(Task.Run(() => LoadPersonalityDefectsAsync(SelectedBackground))); | ||||||
|  |             BackgroundSpecialties = new NotifyTaskCompletion<BackgroundSpecialtyItem>(Task.Run(() => LoadBackgroundsSpecialtiesAsync(SelectedBackground))); | ||||||
|  |             Task.Run(async () => SelectedPlayerCharacter.BackgroundSkill = await LoadSkillAsync(SelectedBackground)); | ||||||
|             ResetAlignments(); |             ResetAlignments(); | ||||||
|         } |         } | ||||||
| 
 | 
 | ||||||
|  | @ -229,20 +260,35 @@ namespace AideDeJeu.ViewModels | ||||||
|                 SetProperty(ref _SubBackgroundSelectedIndex, value); |                 SetProperty(ref _SubBackgroundSelectedIndex, value); | ||||||
|                 if (_SubBackgroundSelectedIndex == 0) |                 if (_SubBackgroundSelectedIndex == 0) | ||||||
|                 { |                 { | ||||||
|                     SelectedPlayerCharacter.SubBackground = null; |                     //SelectedPlayerCharacter.SubBackground = null; | ||||||
|                     SubBackgroundSelectedIndex = -1; |                     SubBackgroundSelectedIndex = -1; | ||||||
|  |                     SelectedSubBackground = null; | ||||||
|                 } |                 } | ||||||
|                 else if (_SubBackgroundSelectedIndex > 0) |                 else if (_SubBackgroundSelectedIndex > 0) | ||||||
|                 { |                 { | ||||||
|                     SelectedPlayerCharacter.SubBackground = SubBackgrounds.Result[_SubBackgroundSelectedIndex]; |                     SelectedSubBackground = SubBackgrounds.Result[_SubBackgroundSelectedIndex]; | ||||||
|                 } |                 } | ||||||
|  |             } | ||||||
|  |         } | ||||||
|  | 
 | ||||||
|  |         private SubBackgroundItem _SelectedSubBackground = null; | ||||||
|  |         public SubBackgroundItem SelectedSubBackground | ||||||
|  |         { | ||||||
|  |             get | ||||||
|  |             { | ||||||
|  |                 return _SelectedSubBackground; | ||||||
|  |             } | ||||||
|  |             set | ||||||
|  |             { | ||||||
|  |                 SetProperty(ref _SelectedSubBackground, value); | ||||||
|                 SelectedSubBackgroundChanged(); |                 SelectedSubBackgroundChanged(); | ||||||
|             } |             } | ||||||
|         } |         } | ||||||
| 
 | 
 | ||||||
|         private void SelectedSubBackgroundChanged() |         private void SelectedSubBackgroundChanged() | ||||||
|         { |         { | ||||||
|             if (SelectedPlayerCharacter.SubBackground == null) |             SelectedPlayerCharacter.SubBackground = SelectedSubBackground; | ||||||
|  |             if (SelectedSubBackground == null) | ||||||
|             { |             { | ||||||
|                 SubBackgroundSpecialties = null; |                 SubBackgroundSpecialties = null; | ||||||
|                 SelectedPlayerCharacter.SubBackgroundSkill = null; |                 SelectedPlayerCharacter.SubBackgroundSkill = null; | ||||||
|  | @ -250,8 +296,8 @@ namespace AideDeJeu.ViewModels | ||||||
|             } |             } | ||||||
|             else |             else | ||||||
|             { |             { | ||||||
|                 SubBackgroundSpecialties = new NotifyTaskCompletion<BackgroundSpecialtyItem>(Task.Run(() => LoadBackgroundsSpecialtiesAsync(SelectedPlayerCharacter.SubBackground))); |                 SubBackgroundSpecialties = new NotifyTaskCompletion<BackgroundSpecialtyItem>(Task.Run(() => LoadBackgroundsSpecialtiesAsync(SelectedSubBackground))); | ||||||
|                 Task.Run(async () => SelectedPlayerCharacter.SubBackgroundSkill = await LoadSkillAsync(SelectedPlayerCharacter.SubBackground)); |                 Task.Run(async () => SelectedPlayerCharacter.SubBackgroundSkill = await LoadSkillAsync(SelectedSubBackground)); | ||||||
|             } |             } | ||||||
|         } |         } | ||||||
| 
 | 
 | ||||||
|  | @ -267,6 +313,20 @@ namespace AideDeJeu.ViewModels | ||||||
|                 SetProperty(ref _PersonalityTraits, value); |                 SetProperty(ref _PersonalityTraits, value); | ||||||
|             } |             } | ||||||
|         } |         } | ||||||
|  |         private string _SelectedPersonalityTrait = null; | ||||||
|  |         public string SelectedPersonalityTrait | ||||||
|  |         { | ||||||
|  |             get | ||||||
|  |             { | ||||||
|  |                 return _SelectedPersonalityTrait; | ||||||
|  |             } | ||||||
|  |             private set | ||||||
|  |             { | ||||||
|  |                 SetProperty(ref _SelectedPersonalityTrait, value); | ||||||
|  |                 SelectedPlayerCharacter.PersonalityTrait = value; | ||||||
|  |             } | ||||||
|  |         } | ||||||
|  | 
 | ||||||
|         private NotifyTaskCompletion<List<string>> _PersonalityIdeals = null; |         private NotifyTaskCompletion<List<string>> _PersonalityIdeals = null; | ||||||
|         public NotifyTaskCompletion<List<string>> PersonalityIdeals |         public NotifyTaskCompletion<List<string>> PersonalityIdeals | ||||||
|         { |         { | ||||||
|  | @ -279,6 +339,20 @@ namespace AideDeJeu.ViewModels | ||||||
|                 SetProperty(ref _PersonalityIdeals, value); |                 SetProperty(ref _PersonalityIdeals, value); | ||||||
|             } |             } | ||||||
|         } |         } | ||||||
|  |         private string _SelectedPersonalityIdeal = null; | ||||||
|  |         public string SelectedPersonalityIdeal | ||||||
|  |         { | ||||||
|  |             get | ||||||
|  |             { | ||||||
|  |                 return _SelectedPersonalityIdeal; | ||||||
|  |             } | ||||||
|  |             private set | ||||||
|  |             { | ||||||
|  |                 SetProperty(ref _SelectedPersonalityIdeal, value); | ||||||
|  |                 SelectedPlayerCharacter.PersonalityIdeal = value; | ||||||
|  |             } | ||||||
|  |         } | ||||||
|  | 
 | ||||||
|         private NotifyTaskCompletion<List<string>> _PersonalityLinks = null; |         private NotifyTaskCompletion<List<string>> _PersonalityLinks = null; | ||||||
|         public NotifyTaskCompletion<List<string>> PersonalityLinks |         public NotifyTaskCompletion<List<string>> PersonalityLinks | ||||||
|         { |         { | ||||||
|  | @ -291,6 +365,20 @@ namespace AideDeJeu.ViewModels | ||||||
|                 SetProperty(ref _PersonalityLinks, value); |                 SetProperty(ref _PersonalityLinks, value); | ||||||
|             } |             } | ||||||
|         } |         } | ||||||
|  |         private string _SelectedPersonalityLink = null; | ||||||
|  |         public string SelectedPersonalityLink | ||||||
|  |         { | ||||||
|  |             get | ||||||
|  |             { | ||||||
|  |                 return _SelectedPersonalityLink; | ||||||
|  |             } | ||||||
|  |             private set | ||||||
|  |             { | ||||||
|  |                 SetProperty(ref _SelectedPersonalityLink, value); | ||||||
|  |                 SelectedPlayerCharacter.PersonalityLink = value; | ||||||
|  |             } | ||||||
|  |         } | ||||||
|  | 
 | ||||||
|         private NotifyTaskCompletion<List<string>> _PersonalityDefects = null; |         private NotifyTaskCompletion<List<string>> _PersonalityDefects = null; | ||||||
|         public NotifyTaskCompletion<List<string>> PersonalityDefects |         public NotifyTaskCompletion<List<string>> PersonalityDefects | ||||||
|         { |         { | ||||||
|  | @ -303,6 +391,20 @@ namespace AideDeJeu.ViewModels | ||||||
|                 SetProperty(ref _PersonalityDefects, value); |                 SetProperty(ref _PersonalityDefects, value); | ||||||
|             } |             } | ||||||
|         } |         } | ||||||
|  |         private string _SelectedPersonalityDefect = null; | ||||||
|  |         public string SelectedPersonalityDefect | ||||||
|  |         { | ||||||
|  |             get | ||||||
|  |             { | ||||||
|  |                 return _SelectedPersonalityDefect; | ||||||
|  |             } | ||||||
|  |             private set | ||||||
|  |             { | ||||||
|  |                 SetProperty(ref _SelectedPersonalityDefect, value); | ||||||
|  |                 SelectedPlayerCharacter.PersonalityDefect = value; | ||||||
|  |             } | ||||||
|  |         } | ||||||
|  | 
 | ||||||
|         private NotifyTaskCompletion<BackgroundSpecialtyItem> _BackgroundSpecialties = null; |         private NotifyTaskCompletion<BackgroundSpecialtyItem> _BackgroundSpecialties = null; | ||||||
|         public NotifyTaskCompletion<BackgroundSpecialtyItem> BackgroundSpecialties |         public NotifyTaskCompletion<BackgroundSpecialtyItem> BackgroundSpecialties | ||||||
|         { |         { | ||||||
|  | @ -476,7 +578,7 @@ namespace AideDeJeu.ViewModels | ||||||
|                 return new List<SubBackgroundItem>(); |                 return new List<SubBackgroundItem>(); | ||||||
|             } |             } | ||||||
|         } |         } | ||||||
| 
 |         /* | ||||||
|         public ICommand BackgroundSpecialtyPickerCommand |         public ICommand BackgroundSpecialtyPickerCommand | ||||||
|         { |         { | ||||||
|             get |             get | ||||||
|  | @ -495,7 +597,7 @@ namespace AideDeJeu.ViewModels | ||||||
|         { |         { | ||||||
|             get |             get | ||||||
|             { |             { | ||||||
|                 return new Command<List<string>>(async (strings) => SelectedPlayerCharacter.PersonalityTrait = await ExecuteStringPickerCommandAsync(strings)); |                 return new Command<List<string>>(async (strings) => SelectedPersonalityTrait = await ExecuteStringPickerCommandAsync(strings)); | ||||||
|             } |             } | ||||||
|         } |         } | ||||||
|         public ICommand PersonalityIdealPickerCommand |         public ICommand PersonalityIdealPickerCommand | ||||||
|  | @ -524,7 +626,8 @@ namespace AideDeJeu.ViewModels | ||||||
|                 return new Command<List<string>>(async (strings) => SelectedPlayerCharacter.PersonalityDefect = await ExecuteStringPickerCommandAsync(strings)); |                 return new Command<List<string>>(async (strings) => SelectedPlayerCharacter.PersonalityDefect = await ExecuteStringPickerCommandAsync(strings)); | ||||||
|             } |             } | ||||||
|         } |         } | ||||||
| 
 |         */ | ||||||
|  |         /* | ||||||
|         private async Task<string> ExecuteStringPickerCommandAsync(List<string> strings) |         private async Task<string> ExecuteStringPickerCommandAsync(List<string> strings) | ||||||
|         { |         { | ||||||
|             var picker = new Views.StringPicker(); |             var picker = new Views.StringPicker(); | ||||||
|  | @ -535,6 +638,7 @@ namespace AideDeJeu.ViewModels | ||||||
|             await Main.Navigator.Navigation.PopModalAsync(true); |             await Main.Navigator.Navigation.PopModalAsync(true); | ||||||
|             return result; |             return result; | ||||||
|         } |         } | ||||||
|  |         */ | ||||||
|         #endregion Background |         #endregion Background | ||||||
| 
 | 
 | ||||||
|         #region Abilities |         #region Abilities | ||||||
|  |  | ||||||
							
								
								
									
										31
									
								
								AideDeJeu/AideDeJeu/Views/ItemPicker.xaml
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										31
									
								
								AideDeJeu/AideDeJeu/Views/ItemPicker.xaml
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,31 @@ | ||||||
|  | <?xml version="1.0" encoding="utf-8" ?> | ||||||
|  | <ContentPage xmlns="http://xamarin.com/schemas/2014/forms" | ||||||
|  |              xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml" | ||||||
|  |              xmlns:mdview="clr-namespace:Xam.Forms.Markdown" | ||||||
|  |              xmlns:tools="clr-namespace:AideDeJeu.Tools" | ||||||
|  |              x:Class="AideDeJeu.Views.ItemPicker" | ||||||
|  |              Title="{Binding Title}"> | ||||||
|  |     <ContentPage.Resources> | ||||||
|  |         <ResourceDictionary> | ||||||
|  |             <tools:MonsterMarkdownTheme x:Key="MonsterMarkdownTheme" /> | ||||||
|  |             <tools:NullToFalseConverter x:Key="NullToFalseConverter" /> | ||||||
|  |         </ResourceDictionary> | ||||||
|  |     </ContentPage.Resources> | ||||||
|  |     <ContentPage.Content> | ||||||
|  |         <ListView ItemsSource="{Binding Items}" HasUnevenRows="True" SelectedItem="{Binding SelectedItem, Mode=TwoWay}"> | ||||||
|  |             <ListView.Header> | ||||||
|  |                 <StackLayout> | ||||||
|  |                     <mdview:MarkdownView Theme="{StaticResource MonsterMarkdownTheme}" HorizontalOptions="FillAndExpand" Markdown="{Binding Title, StringFormat='# {0}'}" /> | ||||||
|  |                     <mdview:MarkdownView Theme="{StaticResource MonsterMarkdownTheme}" HorizontalOptions="FillAndExpand" Markdown="{Binding Description}" /> | ||||||
|  |                 </StackLayout> | ||||||
|  |             </ListView.Header> | ||||||
|  |             <ListView.ItemTemplate> | ||||||
|  |                 <DataTemplate> | ||||||
|  |                     <ViewCell> | ||||||
|  |                         <mdview:MarkdownView Theme="{StaticResource MonsterMarkdownTheme}" HorizontalOptions="FillAndExpand" Markdown="{Binding Name}" /> | ||||||
|  |                     </ViewCell> | ||||||
|  |                 </DataTemplate> | ||||||
|  |             </ListView.ItemTemplate> | ||||||
|  |         </ListView> | ||||||
|  |     </ContentPage.Content> | ||||||
|  | </ContentPage> | ||||||
							
								
								
									
										24
									
								
								AideDeJeu/AideDeJeu/Views/ItemPicker.xaml.cs
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										24
									
								
								AideDeJeu/AideDeJeu/Views/ItemPicker.xaml.cs
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,24 @@ | ||||||
|  | using AideDeJeu.ViewModels; | ||||||
|  | using AideDeJeuLib; | ||||||
|  | using System; | ||||||
|  | using System.Collections.Generic; | ||||||
|  | using System.Linq; | ||||||
|  | using System.Text; | ||||||
|  | using System.Threading.Tasks; | ||||||
|  | 
 | ||||||
|  | using Xamarin.Forms; | ||||||
|  | using Xamarin.Forms.Xaml; | ||||||
|  | 
 | ||||||
|  | namespace AideDeJeu.Views | ||||||
|  | { | ||||||
|  |     [XamlCompilation(XamlCompilationOptions.Compile)] | ||||||
|  |     public partial class ItemPicker : ContentPage | ||||||
|  |     { | ||||||
|  |         public PickerViewModel<Item> ViewModel { get; set; } = new PickerViewModel<Item>(); | ||||||
|  |         public ItemPicker() | ||||||
|  |         { | ||||||
|  |             InitializeComponent(); | ||||||
|  |             BindingContext = ViewModel; | ||||||
|  |         } | ||||||
|  |     } | ||||||
|  | } | ||||||
							
								
								
									
										40
									
								
								AideDeJeu/AideDeJeu/Views/ItemPickerView.xaml
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										40
									
								
								AideDeJeu/AideDeJeu/Views/ItemPickerView.xaml
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,40 @@ | ||||||
|  | <?xml version="1.0" encoding="UTF-8"?> | ||||||
|  | <StackLayout xmlns="http://xamarin.com/schemas/2014/forms"  | ||||||
|  |              xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml" | ||||||
|  |         xmlns:tools="clr-namespace:AideDeJeu.Tools" | ||||||
|  |         xmlns:mdview="clr-namespace:Xam.Forms.Markdown" | ||||||
|  |              x:Class="AideDeJeu.Views.ItemPickerView" | ||||||
|  |              x:Name="this"> | ||||||
|  |     <StackLayout.Resources> | ||||||
|  |         <ResourceDictionary> | ||||||
|  |             <tools:MonsterMarkdownTheme x:Key="MonsterMarkdownTheme" /> | ||||||
|  |             <tools:NullToFalseConverter x:Key="NullToFalseConverter" /> | ||||||
|  |         </ResourceDictionary> | ||||||
|  |     </StackLayout.Resources> | ||||||
|  |     <Frame BorderColor="Black" Padding="2"> | ||||||
|  |         <Grid> | ||||||
|  |             <Grid.ColumnDefinitions> | ||||||
|  |                 <ColumnDefinition Width="auto" /> | ||||||
|  |                 <ColumnDefinition Width="*" /> | ||||||
|  |                 <ColumnDefinition Width="auto" /> | ||||||
|  |                 <ColumnDefinition Width="10" /> | ||||||
|  |             </Grid.ColumnDefinitions> | ||||||
|  |             <mdview:MarkdownView Grid.Column="0" Theme="{StaticResource MonsterMarkdownTheme}" Markdown="{Binding Title, Source={x:Reference this}, StringFormat='# {0}'}" IsEnabled="False" /> | ||||||
|  |             <mdview:MarkdownView Grid.Column="1" Theme="{StaticResource MonsterMarkdownTheme}" Markdown="{Binding SelectedItem.Name, Source={x:Reference this}, StringFormat='# : {0}'}" /> | ||||||
|  |             <Image Grid.Column="2" WidthRequest="32" HeightRequest="32" Source="click.png" /> | ||||||
|  |             <mdview:MarkdownView Grid.Row="1" Grid.ColumnSpan="3" Theme="{StaticResource MonsterMarkdownTheme}" Markdown="{Binding SelectedItem.Description, Source={x:Reference this}}" /> | ||||||
|  |         </Grid> | ||||||
|  |     </Frame> | ||||||
|  |     <!--<mdview:MarkdownView Theme="{StaticResource MonsterMarkdownTheme}" Markdown="{Binding SelectedItem, Source={x:Reference this}}" />--> | ||||||
|  |     <!--<StackLayout BindableLayout.ItemsSource="{Binding ItemsSource, Source={x:Reference this}}"> | ||||||
|  |         <BindableLayout.ItemTemplate> | ||||||
|  |             <DataTemplate> | ||||||
|  |                 <Label Text="{Binding}" /> | ||||||
|  |             </DataTemplate> | ||||||
|  |         </BindableLayout.ItemTemplate> | ||||||
|  |     </StackLayout>--> | ||||||
|  |     <StackLayout.GestureRecognizers> | ||||||
|  |         <ClickGestureRecognizer Command="{Binding PickerCommand, Source={x:Reference this}}" CommandParameter="{Binding ItemsSource, Source={x:Reference this}}" /> | ||||||
|  |         <TapGestureRecognizer Command="{Binding PickerCommand, Source={x:Reference this}}" CommandParameter="{Binding ItemsSource, Source={x:Reference this}}" /> | ||||||
|  |     </StackLayout.GestureRecognizers> | ||||||
|  | </StackLayout> | ||||||
							
								
								
									
										101
									
								
								AideDeJeu/AideDeJeu/Views/ItemPickerView.xaml.cs
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										101
									
								
								AideDeJeu/AideDeJeu/Views/ItemPickerView.xaml.cs
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,101 @@ | ||||||
|  | using AideDeJeu.ViewModels; | ||||||
|  | using AideDeJeuLib; | ||||||
|  | using System; | ||||||
|  | using System.Collections.Generic; | ||||||
|  | using System.Linq; | ||||||
|  | using System.Text; | ||||||
|  | using System.Threading.Tasks; | ||||||
|  | using System.Windows.Input; | ||||||
|  | using Xamarin.Forms; | ||||||
|  | using Xamarin.Forms.Xaml; | ||||||
|  | 
 | ||||||
|  | namespace AideDeJeu.Views | ||||||
|  | { | ||||||
|  |     [XamlCompilation(XamlCompilationOptions.Compile)] | ||||||
|  |     public partial class ItemPickerView : StackLayout | ||||||
|  |     { | ||||||
|  |         public MainViewModel Main | ||||||
|  |         { | ||||||
|  |             get | ||||||
|  |             { | ||||||
|  |                 return DependencyService.Get<MainViewModel>(); | ||||||
|  |             } | ||||||
|  |         } | ||||||
|  |         public ItemPickerView() | ||||||
|  |         { | ||||||
|  |             InitializeComponent(); | ||||||
|  |             BindingContext = this; | ||||||
|  |         } | ||||||
|  | 
 | ||||||
|  |         public string Title | ||||||
|  |         { | ||||||
|  |             get { return (string)GetValue(TitleProperty); } | ||||||
|  |             set { SetValue(TitleProperty, value); } | ||||||
|  |         } | ||||||
|  |         public static readonly BindableProperty TitleProperty = BindableProperty.Create( | ||||||
|  |             nameof(Title),  | ||||||
|  |             typeof(string),  | ||||||
|  |             typeof(ItemPickerView), | ||||||
|  |             defaultValue: default(string)); | ||||||
|  | 
 | ||||||
|  |         public string Description | ||||||
|  |         { | ||||||
|  |             get { return (string)GetValue(DescriptionProperty); } | ||||||
|  |             set { SetValue(DescriptionProperty, value); } | ||||||
|  |         } | ||||||
|  |         public static readonly BindableProperty DescriptionProperty = BindableProperty.Create( | ||||||
|  |             nameof(Description), | ||||||
|  |             typeof(string), | ||||||
|  |             typeof(ItemPickerView), | ||||||
|  |             defaultValue: default(string)); | ||||||
|  | 
 | ||||||
|  |         public Item SelectedItem | ||||||
|  |         { | ||||||
|  |             get { return (Item)GetValue(SelectedItemProperty); } | ||||||
|  |             set { SetValue(SelectedItemProperty, value); } | ||||||
|  |         } | ||||||
|  |         public static readonly BindableProperty SelectedItemProperty = BindableProperty.Create( | ||||||
|  |             nameof(SelectedItem),  | ||||||
|  |             typeof(Item),  | ||||||
|  |             typeof(ItemPickerView),  | ||||||
|  |             defaultValue: default(Item),  | ||||||
|  |             defaultBindingMode: BindingMode.TwoWay); | ||||||
|  | 
 | ||||||
|  |         public System.Collections.IEnumerable ItemsSource | ||||||
|  |         { | ||||||
|  |             get { return (System.Collections.IEnumerable)GetValue(ItemsSourceProperty); } | ||||||
|  |             set { SetValue(ItemsSourceProperty, value); } | ||||||
|  |         } | ||||||
|  |         //public static readonly BindableProperty ItemsSourceProperty = BindableProperty.Create( | ||||||
|  |         //    nameof(ItemsSource),  | ||||||
|  |         //    typeof(System.Collections.IList),  | ||||||
|  |         //    typeof(StringPickerView), | ||||||
|  |         //    defaultValue: new List<string>()); | ||||||
|  |         public static readonly BindableProperty ItemsSourceProperty = | ||||||
|  |             BindableProperty.Create( | ||||||
|  |                 nameof(ItemsSource),  | ||||||
|  |                 typeof(System.Collections.IEnumerable),  | ||||||
|  |                 typeof(ItemPickerView),  | ||||||
|  |                 default(System.Collections.IEnumerable)); | ||||||
|  | 
 | ||||||
|  |         public ICommand PickerCommand | ||||||
|  |         { | ||||||
|  |             get | ||||||
|  |             { | ||||||
|  |                 return new Command<System.Collections.IList>(async (items) => SelectedItem = await ExecuteItemPickerCommandAsync(items)); | ||||||
|  |             } | ||||||
|  |         } | ||||||
|  |         private async Task<Item> ExecuteItemPickerCommandAsync(System.Collections.IEnumerable items) | ||||||
|  |         { | ||||||
|  |             var picker = new Views.ItemPicker(); | ||||||
|  |             var vm = picker.ViewModel; | ||||||
|  |             vm.Title = Title; | ||||||
|  |             vm.Description = Description; | ||||||
|  |             vm.Items = items; | ||||||
|  |             await Main.Navigator.Navigation.PushModalAsync(picker, true); | ||||||
|  |             var result = await vm.PickValueAsync(); | ||||||
|  |             await Main.Navigator.Navigation.PopModalAsync(true); | ||||||
|  |             return result; | ||||||
|  |         } | ||||||
|  |     } | ||||||
|  | } | ||||||
|  | @ -23,8 +23,10 @@ | ||||||
|         <ScrollView Orientation="Vertical"> |         <ScrollView Orientation="Vertical"> | ||||||
|             <StackLayout> |             <StackLayout> | ||||||
|                 <Entry Placeholder="Nom" Text="{Binding Name}" Keyboard="Text" /> |                 <Entry Placeholder="Nom" Text="{Binding Name}" Keyboard="Text" /> | ||||||
|                 <Picker Title="Alignement" HorizontalOptions="FillAndExpand" IsEnabled="{Binding Alignments.IsSuccessfullyCompleted}" ItemsSource="{Binding Alignments.Result}" ItemDisplayBinding="{Binding Name}" SelectedIndex="{Binding AlignmentSelectedIndex, Mode=TwoWay}" /> |                 <!--<Picker Title="Alignement" HorizontalOptions="FillAndExpand" IsEnabled="{Binding Alignments.IsSuccessfullyCompleted}" ItemsSource="{Binding Alignments.Result}" ItemDisplayBinding="{Binding Name}" SelectedIndex="{Binding AlignmentSelectedIndex, Mode=TwoWay}" />--> | ||||||
|                 <mdview:MarkdownView Theme="{StaticResource MonsterMarkdownTheme}" Markdown="{Binding SelectedPlayerCharacter.Alignment.Description}" /> |                 <views:ItemPickerView BindingContext="{Binding}" IsEnabled="{Binding Alignments.IsSuccessfullyCompleted}" Title="Alignement" ItemsSource="{Binding Alignments.Result}" SelectedItem="{Binding SelectedAlignment, Mode=TwoWay}" /> | ||||||
|  | 
 | ||||||
|  |                 <!--<mdview:MarkdownView Theme="{StaticResource MonsterMarkdownTheme}" Markdown="{Binding SelectedPlayerCharacter.Alignment.Description}" />--> | ||||||
|                 <Picker Title="Niveau" HorizontalOptions="FillAndExpand" ItemsSource="{Binding Levels}" ItemDisplayBinding="{Binding StringFormat='Niveau : {0}'}" /> |                 <Picker Title="Niveau" HorizontalOptions="FillAndExpand" ItemsSource="{Binding Levels}" ItemDisplayBinding="{Binding StringFormat='Niveau : {0}'}" /> | ||||||
|             </StackLayout> |             </StackLayout> | ||||||
|         </ScrollView> |         </ScrollView> | ||||||
|  | @ -48,19 +50,32 @@ | ||||||
|     <ContentPage Title="Historique"> |     <ContentPage Title="Historique"> | ||||||
|         <ScrollView Orientation="Vertical"> |         <ScrollView Orientation="Vertical"> | ||||||
|             <StackLayout> |             <StackLayout> | ||||||
|                 <Picker Title="Historique" HorizontalOptions="FillAndExpand" IsEnabled="{Binding Backgrounds.IsSuccessfullyCompleted}" ItemsSource="{Binding Backgrounds.Result}" ItemDisplayBinding="{Binding Name}" SelectedIndex="{Binding BackgroundSelectedIndex, Mode=TwoWay}" /> |                 <!--<Picker Title="Historique" HorizontalOptions="FillAndExpand" IsEnabled="{Binding Backgrounds.IsSuccessfullyCompleted}" ItemsSource="{Binding Backgrounds.Result}" ItemDisplayBinding="{Binding Name}" SelectedIndex="{Binding BackgroundSelectedIndex, Mode=TwoWay}" />--> | ||||||
|  |                 <views:ItemPickerView BindingContext="{Binding}" Title="Historique" ItemsSource="{Binding Backgrounds.Result}" SelectedItem="{Binding SelectedBackground, Mode=TwoWay}" /> | ||||||
| 
 | 
 | ||||||
|                 <Picker Title="Variante" HorizontalOptions="FillAndExpand" IsEnabled="{Binding SubBackgrounds.IsSuccessfullyCompleted}" ItemsSource="{Binding SubBackgrounds.Result}" ItemDisplayBinding="{Binding Name}" SelectedIndex="{Binding SubBackgroundSelectedIndex, Mode=TwoWay}" /> |                 <!--<Picker Title="Variante" HorizontalOptions="FillAndExpand" IsEnabled="{Binding SubBackgrounds.IsSuccessfullyCompleted}" ItemsSource="{Binding SubBackgrounds.Result}" ItemDisplayBinding="{Binding Name}" SelectedIndex="{Binding SubBackgroundSelectedIndex, Mode=TwoWay}" />--> | ||||||
|  |                 <views:ItemPickerView BindingContext="{Binding}" Title="Variante" ItemsSource="{Binding SubBackgrounds.Result}" SelectedItem="{Binding SelectedSubBackground, Mode=TwoWay}" /> | ||||||
| 
 | 
 | ||||||
|                 <mdview:MarkdownView Theme="{StaticResource MonsterMarkdownTheme}" Markdown="{Binding SelectedPlayerCharacter.Background.Description}" /> |                 <!--<mdview:MarkdownView Theme="{StaticResource MonsterMarkdownTheme}" Markdown="{Binding SelectedPlayerCharacter.Background.Description}" /> | ||||||
|  | 
 | ||||||
|  |                 <mdview:MarkdownView Theme="{StaticResource MonsterMarkdownTheme}" Markdown="{Binding SelectedPlayerCharacter.SubBackground.Description}" />--> | ||||||
|  | 
 | ||||||
|  |                 <Frame BorderColor="Black" Padding="2"> | ||||||
|  |                     <StackLayout Padding="0"> | ||||||
|  |                         <mdview:MarkdownView Theme="{StaticResource MonsterMarkdownTheme}" HorizontalOptions="FillAndExpand" Markdown="{Binding SelectedPlayerCharacter.SelectedBackgroundSkill.Name, StringFormat='# {0}'}" /> | ||||||
|  |                         <mdview:MarkdownView Theme="{StaticResource MonsterMarkdownTheme}" HorizontalOptions="FillAndExpand" Markdown="{Binding SelectedPlayerCharacter.SelectedBackgroundSkill.Description}" /> | ||||||
|  |                     </StackLayout> | ||||||
|  |                 </Frame> | ||||||
|  |                 <!--<mdview:MarkdownView Theme="{StaticResource MonsterMarkdownTheme}" HorizontalOptions="FillAndExpand" Markdown="{Binding SelectedPlayerCharacter.SelectedBackgroundSkill.Name, StringFormat='# {0}'}" />--> | ||||||
|  |                 <!--<mdview:MarkdownView Theme="{StaticResource MonsterMarkdownTheme}" HorizontalOptions="FillAndExpand" Markdown="{Binding SelectedPlayerCharacter.SelectedBackgroundSkill.Description}" />--> | ||||||
| 
 | 
 | ||||||
|                 <mdview:MarkdownView Theme="{StaticResource MonsterMarkdownTheme}" Markdown="{Binding SelectedPlayerCharacter.SubBackground.Description}" /> |  | ||||||
|                  |                  | ||||||
|                 <mdview:MarkdownView Theme="{StaticResource MonsterMarkdownTheme}" HorizontalOptions="FillAndExpand" Markdown="{Binding SelectedPlayerCharacter.SelectedBackgroundSkill.Name, StringFormat='# {0}'}" /> |  | ||||||
|                 <mdview:MarkdownView Theme="{StaticResource MonsterMarkdownTheme}" HorizontalOptions="FillAndExpand" Markdown="{Binding SelectedPlayerCharacter.SelectedBackgroundSkill.Description}" /> |  | ||||||
|                  |                  | ||||||
|                 <views:StringPickerView BindingContext="{Binding}" Title="{Binding SelectedBackgroundSpecialties.Result.Name}" Description="{Binding SelectedBackgroundSpecialties.Result.Description}" ItemsSource="{Binding SelectedBackgroundSpecialties.Result.BindableTable}" SelectedItem="{Binding SelectedPlayerCharacter.PickedBackgroundSpecialty, Mode=TwoWay}" /> |                 <views:StringPickerView BindingContext="{Binding}" Title="{Binding SelectedBackgroundSpecialties.Result.Name}" Description="{Binding SelectedBackgroundSpecialties.Result.Description}" ItemsSource="{Binding SelectedBackgroundSpecialties.Result.BindableTable}" SelectedItem="{Binding SelectedPlayerCharacter.PickedBackgroundSpecialty, Mode=TwoWay}" /> | ||||||
|                 <mdview:MarkdownView Theme="{StaticResource MonsterMarkdownTheme}" HorizontalOptions="FillAndExpand" Markdown="{Binding SelectedPlayerCharacter.PickedBackgroundSpecialty}" /> |                 <mdview:MarkdownView Theme="{StaticResource MonsterMarkdownTheme}" HorizontalOptions="FillAndExpand" Markdown="{Binding SelectedPlayerCharacter.PickedBackgroundSpecialty}" /> | ||||||
|  | 
 | ||||||
|  |                  | ||||||
|  |                  | ||||||
|                 <!--SelectedItem="{Binding SelectedPlayerCharacter.SelectedBackgroundSpecialty, Mode=TwoWay}"--> |                 <!--SelectedItem="{Binding SelectedPlayerCharacter.SelectedBackgroundSpecialty, Mode=TwoWay}"--> | ||||||
|                 <!--<mdview:MarkdownView Theme="{StaticResource MonsterMarkdownTheme}" IsVisible="{Binding PersonalityTraits.IsSuccessfullyCompleted}" HorizontalOptions="FillAndExpand" Markdown="{Binding SelectedPlayerCharacter.PersonalityTrait}" /> |                 <!--<mdview:MarkdownView Theme="{StaticResource MonsterMarkdownTheme}" IsVisible="{Binding PersonalityTraits.IsSuccessfullyCompleted}" HorizontalOptions="FillAndExpand" Markdown="{Binding SelectedPlayerCharacter.PersonalityTrait}" /> | ||||||
|                 <Button Visual="Material" IsVisible="{Binding SelectedBackgroundSpecialties.IsSuccessfullyCompleted}" Text="Spécialité" Command="{Binding BackgroundSpecialtyPickerCommand}" CommandParameter="{Binding SelectedBackgroundSpecialties.Result}" /> |                 <Button Visual="Material" IsVisible="{Binding SelectedBackgroundSpecialties.IsSuccessfullyCompleted}" Text="Spécialité" Command="{Binding BackgroundSpecialtyPickerCommand}" CommandParameter="{Binding SelectedBackgroundSpecialties.Result}" /> | ||||||
|  | @ -80,16 +95,16 @@ | ||||||
| 
 | 
 | ||||||
|                 <!--<views:StringPickerView Title="Trait de personnalité" IsVisible="{Binding PersonalityTraits.IsSuccessfullyCompleted}" ItemsSource="{Binding PersonalityTraits.Result}" />--> |                 <!--<views:StringPickerView Title="Trait de personnalité" IsVisible="{Binding PersonalityTraits.IsSuccessfullyCompleted}" ItemsSource="{Binding PersonalityTraits.Result}" />--> | ||||||
|                 <views:StringPickerView BindingContext="{Binding}" Title="Trait de personnalité" IsVisible="{Binding PersonalityTraits.IsSuccessfullyCompleted}" ItemsSource="{Binding PersonalityTraits.Result}" SelectedItem="{Binding SelectedPlayerCharacter.PersonalityTrait, Mode=TwoWay}" /> |                 <views:StringPickerView BindingContext="{Binding}" Title="Trait de personnalité" IsVisible="{Binding PersonalityTraits.IsSuccessfullyCompleted}" ItemsSource="{Binding PersonalityTraits.Result}" SelectedItem="{Binding SelectedPlayerCharacter.PersonalityTrait, Mode=TwoWay}" /> | ||||||
|                 <mdview:MarkdownView Theme="{StaticResource MonsterMarkdownTheme}" IsVisible="{Binding PersonalityTraits.IsSuccessfullyCompleted}" HorizontalOptions="FillAndExpand" Markdown="{Binding SelectedPlayerCharacter.PersonalityTrait}" /> |                 <!--<mdview:MarkdownView Theme="{StaticResource MonsterMarkdownTheme}" IsVisible="{Binding PersonalityTraits.IsSuccessfullyCompleted}" HorizontalOptions="FillAndExpand" Markdown="{Binding SelectedPlayerCharacter.PersonalityTrait}" />--> | ||||||
| 
 | 
 | ||||||
|                 <views:StringPickerView BindingContext="{Binding}" Title="Idéal" IsVisible="{Binding PersonalityIdeals.IsSuccessfullyCompleted}" ItemsSource="{Binding PersonalityIdeals.Result}" SelectedItem="{Binding SelectedPlayerCharacter.PersonalityIdeal, Mode=TwoWay}" /> |                 <views:StringPickerView BindingContext="{Binding}" Title="Idéal" IsVisible="{Binding PersonalityIdeals.IsSuccessfullyCompleted}" ItemsSource="{Binding PersonalityIdeals.Result}" SelectedItem="{Binding SelectedPlayerCharacter.PersonalityIdeal, Mode=TwoWay}" /> | ||||||
|                 <mdview:MarkdownView Theme="{StaticResource MonsterMarkdownTheme}" IsVisible="{Binding PersonalityIdeals.IsSuccessfullyCompleted}" HorizontalOptions="FillAndExpand" Markdown="{Binding SelectedPlayerCharacter.PersonalityIdeal}" /> |                 <!--<mdview:MarkdownView Theme="{StaticResource MonsterMarkdownTheme}" IsVisible="{Binding PersonalityIdeals.IsSuccessfullyCompleted}" HorizontalOptions="FillAndExpand" Markdown="{Binding SelectedPlayerCharacter.PersonalityIdeal}" />--> | ||||||
| 
 | 
 | ||||||
|                 <views:StringPickerView BindingContext="{Binding}" Title="Lien" IsVisible="{Binding PersonalityLinks.IsSuccessfullyCompleted}" ItemsSource="{Binding PersonalityLinks.Result}" SelectedItem="{Binding SelectedPlayerCharacter.PersonalityLink, Mode=TwoWay}" /> |                 <views:StringPickerView BindingContext="{Binding}" Title="Lien" IsVisible="{Binding PersonalityLinks.IsSuccessfullyCompleted}" ItemsSource="{Binding PersonalityLinks.Result}" SelectedItem="{Binding SelectedPlayerCharacter.PersonalityLink, Mode=TwoWay}" /> | ||||||
|                 <mdview:MarkdownView Theme="{StaticResource MonsterMarkdownTheme}" IsVisible="{Binding PersonalityLinks.IsSuccessfullyCompleted}" HorizontalOptions="FillAndExpand" Markdown="{Binding SelectedPlayerCharacter.PersonalityLink}" /> |                 <!--<mdview:MarkdownView Theme="{StaticResource MonsterMarkdownTheme}" IsVisible="{Binding PersonalityLinks.IsSuccessfullyCompleted}" HorizontalOptions="FillAndExpand" Markdown="{Binding SelectedPlayerCharacter.PersonalityLink}" />--> | ||||||
| 
 | 
 | ||||||
|                 <views:StringPickerView BindingContext="{Binding}" Title="Défaut" IsVisible="{Binding PersonalityDefects.IsSuccessfullyCompleted}" ItemsSource="{Binding PersonalityDefects.Result}" SelectedItem="{Binding SelectedPlayerCharacter.PersonalityDefect, Mode=TwoWay}" /> |                 <views:StringPickerView BindingContext="{Binding}" Title="Défaut" IsVisible="{Binding PersonalityDefects.IsSuccessfullyCompleted}" ItemsSource="{Binding PersonalityDefects.Result}" SelectedItem="{Binding SelectedPlayerCharacter.PersonalityDefect, Mode=TwoWay}" /> | ||||||
|                 <mdview:MarkdownView Theme="{StaticResource MonsterMarkdownTheme}" IsVisible="{Binding PersonalityDefects.IsSuccessfullyCompleted}" HorizontalOptions="FillAndExpand" Markdown="{Binding SelectedPlayerCharacter.PersonalityDefect}" /> |                 <!--<mdview:MarkdownView Theme="{StaticResource MonsterMarkdownTheme}" IsVisible="{Binding PersonalityDefects.IsSuccessfullyCompleted}" HorizontalOptions="FillAndExpand" Markdown="{Binding SelectedPlayerCharacter.PersonalityDefect}" />--> | ||||||
| 
 | 
 | ||||||
|                 <!--<Button Visual="Material" IsVisible="{Binding PersonalityIdeals.IsSuccessfullyCompleted}" Text="Idéal" Command="{Binding PersonalityIdealPickerCommand}" CommandParameter="{Binding PersonalityIdeals.Result}" /> |                 <!--<Button Visual="Material" IsVisible="{Binding PersonalityIdeals.IsSuccessfullyCompleted}" Text="Idéal" Command="{Binding PersonalityIdealPickerCommand}" CommandParameter="{Binding PersonalityIdeals.Result}" /> | ||||||
|                 <mdview:MarkdownView Theme="{StaticResource MonsterMarkdownTheme}" IsVisible="{Binding PersonalityIdeals.IsSuccessfullyCompleted}" HorizontalOptions="FillAndExpand" Markdown="{Binding SelectedPlayerCharacter.PersonalityIdeal}" /> |                 <mdview:MarkdownView Theme="{StaticResource MonsterMarkdownTheme}" IsVisible="{Binding PersonalityIdeals.IsSuccessfullyCompleted}" HorizontalOptions="FillAndExpand" Markdown="{Binding SelectedPlayerCharacter.PersonalityIdeal}" /> | ||||||
|  |  | ||||||
|  | @ -20,6 +20,7 @@ | ||||||
|             </Grid.ColumnDefinitions> |             </Grid.ColumnDefinitions> | ||||||
|             <mdview:MarkdownView Grid.Column="0" Theme="{StaticResource MonsterMarkdownTheme}" Markdown="{Binding Title, Source={x:Reference this}, StringFormat='# {0}'}" IsEnabled="False" /> |             <mdview:MarkdownView Grid.Column="0" Theme="{StaticResource MonsterMarkdownTheme}" Markdown="{Binding Title, Source={x:Reference this}, StringFormat='# {0}'}" IsEnabled="False" /> | ||||||
|             <Image Grid.Column="1" WidthRequest="32" HeightRequest="32" Source="click.png" /> |             <Image Grid.Column="1" WidthRequest="32" HeightRequest="32" Source="click.png" /> | ||||||
|  |             <mdview:MarkdownView Grid.Row="1" Grid.ColumnSpan="2" Theme="{StaticResource MonsterMarkdownTheme}" Markdown="{Binding SelectedItem, Source={x:Reference this}}" /> | ||||||
|         </Grid> |         </Grid> | ||||||
|     </Frame> |     </Frame> | ||||||
|     <!--<mdview:MarkdownView Theme="{StaticResource MonsterMarkdownTheme}" Markdown="{Binding SelectedItem, Source={x:Reference this}}" />--> |     <!--<mdview:MarkdownView Theme="{StaticResource MonsterMarkdownTheme}" Markdown="{Binding SelectedItem, Source={x:Reference this}}" />--> | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Yan Maniez
						Yan Maniez