当我调用此用户控件时,为什么 xaml 一直说 "The given key "idiomas“不在字典中”?
Why xaml keep saying "The given key "idiomas" was not present in the dictionary" when i call this user control?
我一直在阅读所有与此类似的问题,但我找不到解决方法,所以我知道这已被质疑很多,但我找不到问题所在,所以我需要帮助。
首先,我有一个 windows“MenuRecursos”(ResourcesMenu),这个 windows 调用两种类型的 UC(用户控件),一种只是为了让按钮看起来更漂亮 ->” ElementoRecursos”(ResourceElement),另一个是显示带有资源文件的面板 -> “PanelMostrarArchivos”(ToShowFilesPannel)。
要同时使用它们,我在 xaml 中有这一行
xmlns:uc="clr-命名空间:ElEscribaDelDJ.Resources.UserControls.Resources"
我就是这样称呼他们的
<uc:ElementoRecursos DireccionImagen="/images/icons/icons8-documents.png"
NombreElemento="{DynamicResource DocumentsTitle}"
Altura="{Binding ElementName=PrimeraColumna, Path=ActualHeight}"
x:Name="UCdocuments"/>
和
<uc:PanelMostrarArchivos DataContext="{Binding}" x:Name="UCPanelMostrarArchivos"/>
但正如我所说,第二个给了我“给定的密钥不存在”,我不知道为什么,因为在他们的任何文件中都没有这样的词,在他们的 .cs 中也没有
现在完整的 xamls:
菜单递归
<Window x:Class="ElEscribaDelDJ.View.Resources.MenuRecursos"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:local="clr-namespace:ElEscribaDelDJ.View.Resources"
xmlns:uc="clr-namespace:ElEscribaDelDJ.Resources.UserControls.Resources"
mc:Ignorable="d"
Title="MenuRecursos"
WindowStartupLocation="CenterOwner"
WindowState="Maximized"
Background="DarkRed"
ContentRendered="Window_ContentRendered">
<Window.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="../../Resources/View/Resources/MenuRecursos.xaml"/>
<ResourceDictionary Source="../../Idiomas/ES/View/Resources/MenuRecursos.xaml"/>
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</Window.Resources>
<Grid>
<!-- Rejilla base, esta define las filas y columnas donde ira cada elemento del menu -->
<Grid x:Name="GridRecursos">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="*"/>
<RowDefinition Height="*"/>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<!-- 1º Elemento del menu, control de usuario personalizado -->
<StackPanel x:Name="PrimeraColumna">
<Button x:Name="BotonDetallesDocumentos"
Click="BotonDetallesDocumentos_Click"
Style="{DynamicResource BotonSeccion}">
<uc:ElementoRecursos DireccionImagen="/images/icons/icons8-documents.png"
NombreElemento="{DynamicResource DocumentsTitle}"
Altura="{Binding ElementName=PrimeraColumna, Path=ActualHeight}"
x:Name="UCdocuments"/>
</Button>
<!-- Control de usuario que controla titulo de campaña y el botón para crear uno nuevo -->
<Border x:Name="DescripcionDocumentos"
Style="{DynamicResource InformacionSeccion}">
<TextBlock Style="{DynamicResource Texto_InformacionSeccion}"
Text="{DynamicResource DocumentsInfo}"/>
</Border>
<ScrollViewer x:Name="ScrollViewerDocumentos"
Visibility="Collapsed"
MaxHeight="{Binding MaximaAlturaScrollViewers}">
<uc:PanelMostrarArchivos DataContext="{Binding}" x:Name="UCPanelMostrarArchivos"/>
</ScrollViewer>
</StackPanel>
<!-- 2º Elemento del menu, control personalizado de usuario -->
<StackPanel Grid.Column="1">
<Button x:Name="BotonDetallesReglas"
Click="BotonDetallesReglas_Click"
Style="{DynamicResource BotonSeccion}">
<uc:ElementoRecursos DireccionImagen="/images/icons/icons8-resume.png"
NombreElemento="{DynamicResource RulesTitle}"
Altura="{Binding ElementName=PrimeraColumna, Path=ActualHeight}" x:Name="UCresumenes"/>
</Button>
<Border x:Name="DescripcionResumenes"
Style="{DynamicResource InformacionSeccion}">
<TextBlock Style="{DynamicResource Texto_InformacionSeccion}"
Text="{DynamicResource RulesInfo}"/>
</Border>
<ScrollViewer x:Name="ScrollViewerReglas"
Visibility="Collapsed"
MaxHeight="{Binding MaximaAlturaScrollViewers}">
<ListView>
<uc:Resumen_reglas/>
</ListView>
</ScrollViewer>
</StackPanel>
<!-- 3º Elemento del menu, control personalizado de usuario -->
<StackPanel Grid.Row="1">
<Button x:Name="BotonLore"
Click="BotonLore_Click"
Style="{DynamicResource BotonSeccion}">
<uc:ElementoRecursos DireccionImagen="/images/icons/icons8-himeji.png"
NombreElemento="{DynamicResource LoreTitle}"
Altura="{Binding ElementName=PrimeraColumna, Path=ActualHeight}" x:Name="UClore"/>
</Button>
<Border x:Name="DescripcionLore"
Style="{DynamicResource InformacionSeccion}">
<TextBlock Style="{DynamicResource Texto_InformacionSeccion}"
Text="{DynamicResource LoreInfo}"/>
</Border>
<ScrollViewer x:Name="ScrollViewerLore"
Visibility="Collapsed"
MaxHeight="{Binding MaximaAlturaScrollViewers}">
<uc:PanelMostrarArchivos/>
</ScrollViewer>
</StackPanel>
<!-- 4º Elemento del menu, control personalizado de usuario -->
<StackPanel Grid.Row="1" Grid.Column="1">
<Button x:Name="BotonMedia"
Click="BotonMedia_Click"
Style="{DynamicResource BotonSeccion}">
<uc:ElementoRecursos DireccionImagen="/images/icons/icons8-speaker.png"
NombreElemento="{DynamicResource MediaTitle}"
Altura="{Binding ElementName=PrimeraColumna, Path=ActualHeight}" x:Name="UCmedia"/>
</Button>
<Border x:Name="DescripcionMedia"
Style="{DynamicResource InformacionSeccion}">
<TextBlock Style="{DynamicResource Texto_InformacionSeccion}"
Text="{DynamicResource MediaInfo}"/>
</Border>
<ScrollViewer x:Name="ScrollViewerMedia"
Visibility="Collapsed"
MaxHeight="{Binding MaximaAlturaScrollViewers}">
<uc:PanelMostrarArchivos/>
</ScrollViewer>
</StackPanel>
<!-- 5º Elemento del menu, control personalizado de usuario -->
<StackPanel Grid.Row="2">
<Button x:Name="BotonFichas"
Click="BotonFichas_Click"
Style="{DynamicResource BotonSeccion}">
<uc:ElementoRecursos DireccionImagen="/images/icons/icons8-pdf.png"
NombreElemento="{DynamicResource SheetsTitle}"
Altura="{Binding ElementName=PrimeraColumna, Path=ActualHeight}" x:Name="UCfichas"/>
</Button>
<Border x:Name="DescripcionFichas"
Style="{DynamicResource InformacionSeccion}">
<TextBlock Style="{DynamicResource Texto_InformacionSeccion}"
Text="{DynamicResource SheetsInfo}"/>
</Border>
<ScrollViewer x:Name="ScrollViewerFichas"
Visibility="Collapsed"
MaxHeight="{Binding MaximaAlturaScrollViewers}">
<uc:PanelMostrarArchivos/>
</ScrollViewer>
</StackPanel>
</Grid>
</Grid>
</Window>
PanelMostrarArchivos
<UserControl x:Class="ElEscribaDelDJ.Resources.UserControls.Resources.PanelMostrarArchivos"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
mc:Ignorable="d"
d:DesignHeight="450" d:DesignWidth="800">
<Grid Background="White">
<StackPanel>
<Grid Background="White">
<StackPanel Orientation="Horizontal"
HorizontalAlignment="Center"
Background="White"
x:Name="StackPanelCampana">
<TextBlock Text="{Binding TituloCampana}"
TextDecorations="Underline"
VerticalAlignment="Center"
FontSize="15"
Margin="0,0,10,0"/>
<Button BorderThickness="0" Background="Transparent" x:Name="BotonAnadirCampana">
<StackPanel>
<Image Source="/Images/icons/iconoMas.png" Width="15"/>
<TextBlock Text="{Binding TextoBoton}" FontSize="10"/>
</StackPanel>
</Button>
</StackPanel>
</Grid>
<WrapPanel x:Name="WrapPanelCampaign"
Background="#f9f2a4">
</WrapPanel>
<StackPanel Orientation="Horizontal"
HorizontalAlignment="Center"
Background="White"
Visibility="Collapsed"
x:Name="StackPanelScenary">
<TextBlock Text="{Binding TituloEscenario}"
TextDecorations="Underline"
VerticalAlignment="Center"
FontSize="15"
Margin="0,0,10,0"/>
<Button BorderThickness="0" Background="Transparent" x:Name="BotonAnadirEscenario">
<StackPanel>
<Image Source="/Images/icons/iconoMas.png" Width="15"/>
<TextBlock Text="{Binding TextoBoton}" FontSize="10"/>
</StackPanel>
</Button>
</StackPanel>
<WrapPanel x:Name="WrapPanelScenary"
Background="#f9f2a4">
</WrapPanel>
<StackPanel Orientation="Horizontal"
HorizontalAlignment="Center"
Background="White"
VerticalAlignment="Center"
Visibility="Collapsed"
x:Name="StackPanelAdventure">
<TextBlock Text="{Binding TituloAventura}"
TextDecorations="Underline"
VerticalAlignment="Center"
FontSize="15"
Margin="0,0,10,0"/>
<Button BorderThickness="0" Background="Transparent" x:Name="BotonAnadirAventura">
<StackPanel>
<Image Source="/Images/icons/iconoMas.png" Width="15"/>
<TextBlock Text="{Binding TextoBoton}" FontSize="10"/>
</StackPanel>
</Button>
</StackPanel>
<WrapPanel x:Name="WrapPanelAdventures"
Background="#f9f2a4">
</WrapPanel>
</StackPanel>
</Grid>
</UserControl>
简单的错误已经消失,不知道为什么但现在没有出现在 xaml 中,没有做任何更改
我一直在阅读所有与此类似的问题,但我找不到解决方法,所以我知道这已被质疑很多,但我找不到问题所在,所以我需要帮助。
首先,我有一个 windows“MenuRecursos”(ResourcesMenu),这个 windows 调用两种类型的 UC(用户控件),一种只是为了让按钮看起来更漂亮 ->” ElementoRecursos”(ResourceElement),另一个是显示带有资源文件的面板 -> “PanelMostrarArchivos”(ToShowFilesPannel)。
要同时使用它们,我在 xaml 中有这一行 xmlns:uc="clr-命名空间:ElEscribaDelDJ.Resources.UserControls.Resources"
我就是这样称呼他们的
<uc:ElementoRecursos DireccionImagen="/images/icons/icons8-documents.png"
NombreElemento="{DynamicResource DocumentsTitle}"
Altura="{Binding ElementName=PrimeraColumna, Path=ActualHeight}"
x:Name="UCdocuments"/>
和
<uc:PanelMostrarArchivos DataContext="{Binding}" x:Name="UCPanelMostrarArchivos"/>
但正如我所说,第二个给了我“给定的密钥不存在”,我不知道为什么,因为在他们的任何文件中都没有这样的词,在他们的 .cs 中也没有
现在完整的 xamls:
菜单递归
<Window x:Class="ElEscribaDelDJ.View.Resources.MenuRecursos"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:local="clr-namespace:ElEscribaDelDJ.View.Resources"
xmlns:uc="clr-namespace:ElEscribaDelDJ.Resources.UserControls.Resources"
mc:Ignorable="d"
Title="MenuRecursos"
WindowStartupLocation="CenterOwner"
WindowState="Maximized"
Background="DarkRed"
ContentRendered="Window_ContentRendered">
<Window.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="../../Resources/View/Resources/MenuRecursos.xaml"/>
<ResourceDictionary Source="../../Idiomas/ES/View/Resources/MenuRecursos.xaml"/>
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</Window.Resources>
<Grid>
<!-- Rejilla base, esta define las filas y columnas donde ira cada elemento del menu -->
<Grid x:Name="GridRecursos">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="*"/>
<RowDefinition Height="*"/>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<!-- 1º Elemento del menu, control de usuario personalizado -->
<StackPanel x:Name="PrimeraColumna">
<Button x:Name="BotonDetallesDocumentos"
Click="BotonDetallesDocumentos_Click"
Style="{DynamicResource BotonSeccion}">
<uc:ElementoRecursos DireccionImagen="/images/icons/icons8-documents.png"
NombreElemento="{DynamicResource DocumentsTitle}"
Altura="{Binding ElementName=PrimeraColumna, Path=ActualHeight}"
x:Name="UCdocuments"/>
</Button>
<!-- Control de usuario que controla titulo de campaña y el botón para crear uno nuevo -->
<Border x:Name="DescripcionDocumentos"
Style="{DynamicResource InformacionSeccion}">
<TextBlock Style="{DynamicResource Texto_InformacionSeccion}"
Text="{DynamicResource DocumentsInfo}"/>
</Border>
<ScrollViewer x:Name="ScrollViewerDocumentos"
Visibility="Collapsed"
MaxHeight="{Binding MaximaAlturaScrollViewers}">
<uc:PanelMostrarArchivos DataContext="{Binding}" x:Name="UCPanelMostrarArchivos"/>
</ScrollViewer>
</StackPanel>
<!-- 2º Elemento del menu, control personalizado de usuario -->
<StackPanel Grid.Column="1">
<Button x:Name="BotonDetallesReglas"
Click="BotonDetallesReglas_Click"
Style="{DynamicResource BotonSeccion}">
<uc:ElementoRecursos DireccionImagen="/images/icons/icons8-resume.png"
NombreElemento="{DynamicResource RulesTitle}"
Altura="{Binding ElementName=PrimeraColumna, Path=ActualHeight}" x:Name="UCresumenes"/>
</Button>
<Border x:Name="DescripcionResumenes"
Style="{DynamicResource InformacionSeccion}">
<TextBlock Style="{DynamicResource Texto_InformacionSeccion}"
Text="{DynamicResource RulesInfo}"/>
</Border>
<ScrollViewer x:Name="ScrollViewerReglas"
Visibility="Collapsed"
MaxHeight="{Binding MaximaAlturaScrollViewers}">
<ListView>
<uc:Resumen_reglas/>
</ListView>
</ScrollViewer>
</StackPanel>
<!-- 3º Elemento del menu, control personalizado de usuario -->
<StackPanel Grid.Row="1">
<Button x:Name="BotonLore"
Click="BotonLore_Click"
Style="{DynamicResource BotonSeccion}">
<uc:ElementoRecursos DireccionImagen="/images/icons/icons8-himeji.png"
NombreElemento="{DynamicResource LoreTitle}"
Altura="{Binding ElementName=PrimeraColumna, Path=ActualHeight}" x:Name="UClore"/>
</Button>
<Border x:Name="DescripcionLore"
Style="{DynamicResource InformacionSeccion}">
<TextBlock Style="{DynamicResource Texto_InformacionSeccion}"
Text="{DynamicResource LoreInfo}"/>
</Border>
<ScrollViewer x:Name="ScrollViewerLore"
Visibility="Collapsed"
MaxHeight="{Binding MaximaAlturaScrollViewers}">
<uc:PanelMostrarArchivos/>
</ScrollViewer>
</StackPanel>
<!-- 4º Elemento del menu, control personalizado de usuario -->
<StackPanel Grid.Row="1" Grid.Column="1">
<Button x:Name="BotonMedia"
Click="BotonMedia_Click"
Style="{DynamicResource BotonSeccion}">
<uc:ElementoRecursos DireccionImagen="/images/icons/icons8-speaker.png"
NombreElemento="{DynamicResource MediaTitle}"
Altura="{Binding ElementName=PrimeraColumna, Path=ActualHeight}" x:Name="UCmedia"/>
</Button>
<Border x:Name="DescripcionMedia"
Style="{DynamicResource InformacionSeccion}">
<TextBlock Style="{DynamicResource Texto_InformacionSeccion}"
Text="{DynamicResource MediaInfo}"/>
</Border>
<ScrollViewer x:Name="ScrollViewerMedia"
Visibility="Collapsed"
MaxHeight="{Binding MaximaAlturaScrollViewers}">
<uc:PanelMostrarArchivos/>
</ScrollViewer>
</StackPanel>
<!-- 5º Elemento del menu, control personalizado de usuario -->
<StackPanel Grid.Row="2">
<Button x:Name="BotonFichas"
Click="BotonFichas_Click"
Style="{DynamicResource BotonSeccion}">
<uc:ElementoRecursos DireccionImagen="/images/icons/icons8-pdf.png"
NombreElemento="{DynamicResource SheetsTitle}"
Altura="{Binding ElementName=PrimeraColumna, Path=ActualHeight}" x:Name="UCfichas"/>
</Button>
<Border x:Name="DescripcionFichas"
Style="{DynamicResource InformacionSeccion}">
<TextBlock Style="{DynamicResource Texto_InformacionSeccion}"
Text="{DynamicResource SheetsInfo}"/>
</Border>
<ScrollViewer x:Name="ScrollViewerFichas"
Visibility="Collapsed"
MaxHeight="{Binding MaximaAlturaScrollViewers}">
<uc:PanelMostrarArchivos/>
</ScrollViewer>
</StackPanel>
</Grid>
</Grid>
</Window>
PanelMostrarArchivos
<UserControl x:Class="ElEscribaDelDJ.Resources.UserControls.Resources.PanelMostrarArchivos"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
mc:Ignorable="d"
d:DesignHeight="450" d:DesignWidth="800">
<Grid Background="White">
<StackPanel>
<Grid Background="White">
<StackPanel Orientation="Horizontal"
HorizontalAlignment="Center"
Background="White"
x:Name="StackPanelCampana">
<TextBlock Text="{Binding TituloCampana}"
TextDecorations="Underline"
VerticalAlignment="Center"
FontSize="15"
Margin="0,0,10,0"/>
<Button BorderThickness="0" Background="Transparent" x:Name="BotonAnadirCampana">
<StackPanel>
<Image Source="/Images/icons/iconoMas.png" Width="15"/>
<TextBlock Text="{Binding TextoBoton}" FontSize="10"/>
</StackPanel>
</Button>
</StackPanel>
</Grid>
<WrapPanel x:Name="WrapPanelCampaign"
Background="#f9f2a4">
</WrapPanel>
<StackPanel Orientation="Horizontal"
HorizontalAlignment="Center"
Background="White"
Visibility="Collapsed"
x:Name="StackPanelScenary">
<TextBlock Text="{Binding TituloEscenario}"
TextDecorations="Underline"
VerticalAlignment="Center"
FontSize="15"
Margin="0,0,10,0"/>
<Button BorderThickness="0" Background="Transparent" x:Name="BotonAnadirEscenario">
<StackPanel>
<Image Source="/Images/icons/iconoMas.png" Width="15"/>
<TextBlock Text="{Binding TextoBoton}" FontSize="10"/>
</StackPanel>
</Button>
</StackPanel>
<WrapPanel x:Name="WrapPanelScenary"
Background="#f9f2a4">
</WrapPanel>
<StackPanel Orientation="Horizontal"
HorizontalAlignment="Center"
Background="White"
VerticalAlignment="Center"
Visibility="Collapsed"
x:Name="StackPanelAdventure">
<TextBlock Text="{Binding TituloAventura}"
TextDecorations="Underline"
VerticalAlignment="Center"
FontSize="15"
Margin="0,0,10,0"/>
<Button BorderThickness="0" Background="Transparent" x:Name="BotonAnadirAventura">
<StackPanel>
<Image Source="/Images/icons/iconoMas.png" Width="15"/>
<TextBlock Text="{Binding TextoBoton}" FontSize="10"/>
</StackPanel>
</Button>
</StackPanel>
<WrapPanel x:Name="WrapPanelAdventures"
Background="#f9f2a4">
</WrapPanel>
</StackPanel>
</Grid>
</UserControl>
简单的错误已经消失,不知道为什么但现在没有出现在 xaml 中,没有做任何更改