Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Wpf 如何替代MahApps全景控件的选定项目样式?_Wpf_Xaml_Mahapps.metro - Fatal编程技术网

Wpf 如何替代MahApps全景控件的选定项目样式?

Wpf 如何替代MahApps全景控件的选定项目样式?,wpf,xaml,mahapps.metro,Wpf,Xaml,Mahapps.metro,我在我的项目中通过链接MahApps.Metro.dll使用MahApps全景控件,因此我不能直接更改Panorama控件的XAML代码。 我原以为可以重写我的main window.xaml中的值,但当我这样做时,没有任何更改,或者可能更改了错误的属性 “全景”控件的问题在于所选项目有白色边框,我无法找到删除此选择样式的方法。我尝试了几种解决方案,如更改或更改控件模板(),但我的更改对全景控件没有影响 在那里可以看到。这是样式继承方式的问题,很难看到ListViewItems和ListBoxI

我在我的项目中通过链接
MahApps.Metro.dll
使用
MahApps全景控件
,因此我不能直接更改
Panorama控件的
XAML代码
。 我原以为可以重写我的
main window.xaml中的值,但当我这样做时,没有任何更改,或者可能更改了错误的属性

“全景”控件的问题在于所选项目有白色边框,我无法找到删除此选择样式的方法。我尝试了几种解决方案,如更改或更改控件模板(),但我的更改对
全景控件
没有影响


在那里可以看到。

这是样式继承方式的问题,很难看到ListViewItems和ListBoxItems如何协同工作。我通过在代码中插入以下内容修复了此问题。但是,它确实会丢失所选项目:

var listbox = MyPanorama.FindChildByType<ListBox>();
if (listbox != null)
{
    listbox.SelectedIndex = -1;
}
var listbox=MyPanorama.FindChildByType();
如果(列表框!=null)
{
listbox.SelectedIndex=-1;
}
FindChildByType是返回在全景下找到的第一个列表框的简单搜索。如果按名称搜索,则模板列表框的x:name为“items”