WPF ModernUI and Extended Grid Conflict - c#

I have a WPF Project with ModernUI (https://github.com/firstfloorsoftware/mui) and i have a Window with Extended DataGrid (http://wpfextendeddatagrid.codeplex.com/).
The problem is that when I Implement AutoFilter The button to Filter doesn't appear.
Expected result:
But what I get is this:
I can make the filter option work but to do it i need to comment out some line refering to ModernUI Themes on my App.xaml:
<Application.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="/FirstFloor.ModernUI;component/Assets/ModernUI.xaml" />
<ResourceDictionary Source="/FirstFloor.ModernUI;component/Assets/ModernUI.Light.xaml"/>
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</Application.Resources>

Related

Application a style to all page xaml wpf

I have a style file "dark.xaml" that I will use to style all xaml pages, so I place it in "application.xaml". But why my xaml page can't to access the style of "dark.xml"?
<Application.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="/rtwin;component/style/Dark.xaml">
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</Application.Resources>
From your ResourceDictionary source it seems that you are adding style from an assembly (correct if I'm wrong).
Well, in that case, you need to add pack://application:,,, so that your final App.xaml should look like this,
<Application.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="pack://application:,,,/rtwin;component/style/Dark.xaml">
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</Application.Resources>

WPF window and controls style

I have defined in my WPF application all the styles that I want to apply. The problem is that if I open an other window it doesn't have the same style of the main window because it is defined in an other project.
How can I apply the styles of the main application?
Thank you!
EDIT
This is a part of my App.xaml
<Application.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="Assets/Styles/Themes/Dark.xaml" />
<ResourceDictionary Source="Assets/Styles/Border.xaml" />
<ResourceDictionary Source="Assets/Styles/BaseBlock.xaml" />
<ResourceDictionary Source="Assets/Styles/Buttons.xaml" />
.....
What I need is to apply the styles defined in the Main Project to the ones defined in Project1 in order to have uniformity.
Put your styles to the ResourceDictionary of your application resources in App.xaml. So you can use your resources everywhere via {StaticResource keyOfYourStyle}. If you want, that your styles be applied to all controls of the type, then use default styles:
<Style TargetType="Border" BasedOn="{StaticResource keyOfYourStyle}>
<Application.Resources>
<ResourceDictionary>
<ThisResourceWillBeAccessedEveryWhere x:Key="ResName"/>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="pack://application:,,,/YourAssembley;component/Resources/ButtonStyles.xaml" />
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</Application.Resources>

Resource dictionary not found in WPF prism user control

I have the following project structure:
When I tried to add Resoucse dictionary inside my user control FloorplanHierarchy I am getting file not found error:
<UserControl.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source=".../UserControls/UserControlResources/LookUpEditTemplate.xaml" />
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</UserControl.Resources>
LookUpEditTemplate.xaml is inside the folder UserControlResources. Please help.
Remove UserControls in the source because UserControlResources and FloorplanHierarchy both are in the same folder.
So changing this:
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source=".../UserControls/UserControlResources/LookUpEditTemplate.xaml" />
</ResourceDictionary.MergedDictionaries>
To this:
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="../UserControlResources/LookUpEditTemplate.xaml"/>
</ResourceDictionary.MergedDictionaries>
Should works.

Each Dictionary entry must have an associated key attribute

I am programming w Windows 8.1 App using C# and the MVVM-Light Toolkit from GalaSoft.
All I have is the code below:
<Application.Resources>
<vm:ViewModelLocator x:Key="Locator" xmlns:vm="using:Scedule.ViewModel" />
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="Resource Dictionaries/StandardStyles.xaml"/>
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</Application.Resources>
The error "Each Dictionary entry must have an associated key attribute" occurs and only disappears when I either remove
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="Resource Dictionaries/StandardStyles.xaml"/>
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
or
<vm:ViewModelLocator x:Key="Locator" xmlns:vm="using:Scedule.ViewModel" />
Can anyone tell me what the problem here is?
Note that Application.Resources requires an instance of ResourceDictionary, so you have to do something like this:
<Application.Resources>
<ResourceDictionary>
<vm:ViewModelLocator x:Key="Locator" xmlns:vm="using:Scedule.ViewModel" />
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="Resource Dictionaries/StandardStyles.xaml"/>
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</Application.Resources>
So it's not strange at all, it's also not a bug. If you want your ResourceDictionary to be treated as a resource, you of course have to provide some Key for it, however in this case you really want to assign an instance of ResourceDictionary to the Application.Resources

Can i store string in <Application.Resources> and bind to it?

I'm using Microsoft's AdControl on several pages... but in order to simplify it i would like to store ApplicationId once and read it as a resource.
Could it be possible to use in the App.xaml and then in the control set the binding to it? But how?
Use "{StaticResource name}" just like you would with <Page.Resources>
To store the resource, create a new <ResourceDictionary> in <ResourceDictionary.MergedDictionaries> and place your resource in that.
For example:
<Application.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<!--
Styles that define common aspects of the platform look and feel
Required by Visual Studio project and item templates
-->
<ResourceDictionary Source="Common/StandardStyles.xaml"/>
<ResourceDictionary>
<x:String x:Key="Foo">Bar</x:String>
</ResourceDictionary>
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</Application.Resources>

Categories

Resources