Ho un problema in cui ho un oggetto DataGridColumnHeader che riceve testo con caratteri di sottolineatura come contenuto e il primo carattere di sottolineatura è nascosto a meno che non si prema alt ("data_grid_thing" viene visualizzato come "datagrid_thing" Ho cercato un po 'e trovato alcune soluzioni a questo problema per Labels, poiché se si attiva RecognizesAccessKey su false, il testo non verrà considerato come' AccessText '(. Ciò tuttavia non funziona per DataGridColumnHeader, come rimuove tutti gli altri stili, e invece di un'intestazione con testo all'interno, ottengo solo spazi bianchi con testo.Ho provato a usare anche la proprietà BasedOn senza alcun effettoViene rimosso il primo carattere di sottolineatura in un oggetto DataGridColumnHeader
Sono aperto a soluzioni sia attraverso il Lato C# (modificando la proprietà RecognizesAccessKey in qualche modo findi forse il ContentPresenter), o attraverso la modifica di XAML (cercando un modo per preservare lo stile predefinito).
mio XAML simile a questa:
<Style x:Key="DataGridColumnHeaderStyle" BasedOn="{StaticResource {x:Type DataGridColumnHeader}}" TargetType="{x:Type DataGridColumnHeader}">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="DataGridColumnHeader">
<Border>
<ContentPresenter
HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}"
VerticalAlignment="{TemplateBinding VerticalContentAlignment}"
RecognizesAccessKey="False" />
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
Grazie!
Ah ho dimenticato di collegare questo: http://stackoverflow.com/questions/40733/disable-wpf-label-accelerator-key-text-underscore-is-missing Questa è stata la cosa più vicina ad una soluzione Potrei trovare, risolvendo il problema originale, ma causando il problema di stile che ho menzionato sopra. – Stuart
Non riesco davvero a riprodurre questo, non sembra fare la conversione del testo di accesso in un DataGrid non modificato per me ... –
possibile duplicato di [WPF listbox. Salta i simboli di sottolineatura nelle stringhe] (http://stackoverflow.com/questions/4601801/wpf-listbox-skip-underscore-symbols-in-strings) – phoog