
<DataTemplate x:Key="RegionFilterEditorTemplate"> <telerik:RadComboBox SelectedValue="{Binding Path=NAME, Mode=TwoWay, FallbackValue=null}" DisplayMemberPath="NAME" SelectedValuePath="NAME" MinWidth="100" SelectionChanged="RegionSelected"/> </DataTemplate> <DataTemplate x:Key="MUNFilterEditorTemplate"> <telerik:RadComboBox SelectedValue="{Binding Path=NAME, Mode=TwoWay, FallbackValue=null}" DisplayMemberPath="NAME" SelectedValuePath="NAME" MinWidth="100" SelectionChanged="MunicipalitySelected"/> </DataTemplate> <local:MyEditorTemplateSelector x:Key="MyEditorTemplateSelector"> <local:MyEditorTemplateSelector.EditorTemplateRules> <local:EditorTemplateRule PropertyName="N_MUN.N_REGION.NAME" DataTemplate="{StaticResource RegionFilterEditorTemplate}"/> <local:EditorTemplateRule PropertyName="N_MUN.NAME" DataTemplate="{StaticResource MUNFilterEditorTemplate}"/> </local:MyEditorTemplateSelector.EditorTemplateRules> </local:MyEditorTemplateSelector> <telerik:RadDataFilter Name="CitiesFilter" Source="{Binding}" Loaded="CitiesFilter_Loaded" AutoGenerateItemPropertyDefinitions="False" CanUserCreateCompositeFilters="False" EditorCreated="OnRadDataFilterEditorCreated" EditorTemplateSelector="{StaticResource MyEditorTemplateSelector}" > <telerik:RadDataFilter.ItemPropertyDefinitions> <datafilter:ItemPropertyDefinition PropertyName="N_MUN.N_REGION.NAME" PropertyType="{Binding String, Source={StaticResource Types}}" DisplayName="Област" /> <datafilter:ItemPropertyDefinition PropertyName="N_MUN.NAME" PropertyType="{Binding String, Source={StaticResource Types}}" DisplayName="Община" /> <datafilter:ItemPropertyDefinition PropertyName="NAME" PropertyType="{Binding String, Source={StaticResource Types}}" DisplayName="Населено място" /> </telerik:RadDataFilter.ItemPropertyDefinitions> </telerik:RadDataFilter><telerik:RadGridView x:Name="CitiesGrid" ItemsSource="{Binding FilteredSource, ElementName=CitiesFilter}" AutoGenerateColumns="False" IsReadOnly="True" ScrollMode="RealTime" CanUserReorderColumns="False" GridLinesVisibility="Both" IsFilteringAllowed="False" ShowGroupPanel="False" ColumnWidth="Auto"> <telerik:RadGridView.Columns> <telerik:GridViewDataColumn Header="{x:Static res:CitiesDialogFormRes.REGION}" DataMemberBinding="{Binding Path=N_MUN.N_REGION.NAME}" Width="Auto"/> <telerik:GridViewDataColumn Header="{x:Static res:CitiesDialogFormRes.MUN}" DataMemberBinding="{Binding Path=N_MUN.NAME}" Width="Auto" /> <telerik:GridViewDataColumn Header="{x:Static res:CitiesDialogFormRes.CITY}" DataMemberBinding="{Binding Path=NAME}" Width="Auto" /> </telerik:RadGridView.Columns> </telerik:RadGridView>
private void OnRadDataFilterEditorCreated(object sender,Telerik.Windows.Controls.Data.DataFilter.EditorCreatedEventArgs e)
{
switch (e.ItemPropertyDefinition.PropertyName)
{
case "N_MUN.N_REGION.NAME":
regionComboBox = (RadComboBox)e.Editor;
regionComboBox.ItemsSource = db.N_REGION.OrderBy(N_REGION => N_REGION.NAME);
break;
case "N_MUN.NAME":
munComboBox = (RadComboBox)e.Editor;
break;
}
}
private void CitiesFilter_Loaded(object sender, RoutedEventArgs e)
{
FilterDescriptor regionsFilterDesc = new FilterDescriptor("N_MUN.N_REGION.NAME", FilterOperator.IsEqualTo, "", true);
FilterDescriptor munsFilterDesc = new FilterDescriptor("N_MUN.NAME", FilterOperator.IsEqualTo, "", true);
this.CitiesFilter.FilterDescriptors.Add(regionsFilterDesc);
this.CitiesFilter.FilterDescriptors.Add(munsFilterDesc);
}
private void RegionSelected(object sender, SelectionChangedEventArgs e)
{
regionComboBox = (RadComboBox)e.OriginalSource;
var selectedRegion = regionComboBox.SelectedValue;
munComboBox.ItemsSource = db.N_MUN.Where(N_MUN => N_MUN.N_REGION.NAME.Equals(selectedRegion)).OrderBy(N_MUN => N_MUN.NAME);
}

<telerik:GridViewDataColumn DataMemberBinding="{Binding ArtikelNr}" Header="{DynamicResource ArtikelNr}" IsReadOnly="True"/>public class ResourceManager { public static void SetResources(Collection<ResourceDictionary> collection, CultureInfo culture) { RemoveOld(collection); try { Uri resource = new Uri("Resources/Strings_" + culture.Name + ".xaml", System.UriKind.Relative); collection.Add(new ResourceDictionary { Source = resource }); } catch { // TODO: Handle this, is it possible to be here? } } private static void RemoveOld(Collection<ResourceDictionary> collection) { for (int i = 0; i < collection.Count; ++i) { if (collection[i].Source.ToString().Contains("Strings_")) { collection.RemoveAt(i); --i; } } } public static List<CultureInfo> SupportedCultures { get { return new List<CultureInfo>() { new CultureInfo("de-DE"), // DEU new CultureInfo("ru-RU"), // ENU }; } } }public void SetCulture(CultureInfo culture){ Thread.CurrentThread.CurrentCulture = culture; Thread.CurrentThread.CurrentUICulture = culture; ResourceManager.SetResources(Resources.MergedDictionaries, culture);}StreamResourceInfo , but its throw an exception error like "The invocation of the constructor on type ,that matches the specified binding constraints trew an exception " so i don't know how to handle this, could any one help to get out of this issue.
private void SearchList(string searchValue)
{
ControlTemplate tt = (ControlTemplate)baseFrameworkElement.FindResource("NavigationContentTemplate");
ContentControl tc = (ContentControl)baseFrameworkElement.FindName("NavigationContent");
_treeView = tt.FindName("NavigationList", tc) as RadTreeView;
//_treeView.ExpandAll();
//_treeView.CollapseAll();
SearchTree(searchValue.ToLower(), _treeView);
}
private void SearchTree(string searchValue, ItemsControl item)
{
for (int i = 0; i < item.Items.Count; i++)
//foreach (var _dataItem in item.Items)
{
//RadTreeViewItem _childItem = treeView.ContainerFromItemRecursive(_dataItem);
RadTreeViewItem _childItem = item.ItemContainerGenerator.ContainerFromIndex(i) as RadTreeViewItem;
if (_childItem != null)
{
//MessageBox.Show(_childItem.ToString());
if (_childItem.Item is Association)
{
Association _childObject = _childItem.Item as Association;
if (_childObject.AssociationName.ToLower().Contains(searchValue))
{
if (_childItem.ItemContainerGenerator.Status == System.Windows.Controls.Primitives.GeneratorStatus.ContainersGenerated)
{
_childItem.IsExpanded = true;
_childItem.BringIntoView();
}
}
}
else if (_childItem.Item is Economist)
{
Economist _childObject = _childItem.Item as Economist;
if (_childObject.EconomistName.ToLower().Contains(searchValue))
{
if (_childItem.ItemContainerGenerator.Status == System.Windows.Controls.Primitives.GeneratorStatus.ContainersGenerated)
{
_childItem.IsExpanded = true;
_childItem.BringIntoView();
}
}
}
else if (_childItem.Item is Farm)
{
Farm _childObject = _childItem.Item as Farm;
if (_childObject.FarmName.ToLower().Contains(searchValue) || _childObject.FarmNbr.Contains(searchValue))
{
if (_childItem.ItemContainerGenerator.Status == System.Windows.Controls.Primitives.GeneratorStatus.ContainersGenerated)
{
_childItem.IsExpanded = true;
//_childItem.IsSelected = true;
_childItem.BringIntoView();
}
}
}
SearchTree(searchValue, _childItem);
}
}
}