<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);
}
}
}
I am trying to use the Telerik reporting inside a System.Addin control. My control has a separate appdomain and thread then the main form. This is done to isolate the main control from any addins that could cause issues. The RadSlider is grabbing a reference to the mainwindow which is outside of my appdomain and is on a different thread. Is there a way to remove the reference to the main window or set it to the addin control?
System.Windows.Markup.XamlParseException occurred
Message=Cannot create instance of 'RadSlider' defined in assembly 'Telerik.Windows.Controls, Version=2010.3.1110.35, Culture=neutral, PublicKeyToken=5803cfa389c90ce7'. Exception has been thrown by the target of an invocation. Error at object 'System.Windows.Controls.StackPanel' in markup file 'Telerik.ReportViewer.Wpf;component/Themes/Default/ReportViewer.xaml'.
Source=PresentationFramework
LineNumber=0
LinePosition=0
NameContext=87_T
StackTrace:
at System.Windows.Markup.XamlParseException.ThrowException(String message, Exception innerException, Int32 lineNumber, Int32 linePosition, Uri baseUri, XamlObjectIds currentXamlObjectIds, XamlObjectIds contextXamlObjectIds, Type objectType)
at System.Windows.Markup.XamlParseException.ThrowException(ParserContext parserContext, Int32 lineNumber, Int32 linePosition, String message, Exception innerException)
at System.Windows.Markup.BamlRecordReader.ThrowExceptionWithLine(String message, Exception innerException)
at System.Windows.Markup.BamlRecordReader.CreateInstanceFromType(Type type, Int16 typeId, Boolean throwOnFail)
at System.Windows.Markup.BamlRecordReader.GetElementAndFlags(BamlElementStartRecord bamlElementStartRecord, Object& element, ReaderFlags& flags, Type& delayCreatedType, Int16& delayCreatedTypeId)
at System.Windows.Markup.BamlRecordReader.BaseReadElementStartRecord(BamlElementStartRecord bamlElementRecord)
at System.Windows.Markup.BamlRecordReader.ReadElementStartRecord(BamlElementStartRecord bamlElementRecord)
at System.Windows.Markup.BamlRecordReader.ReadRecord(BamlRecord bamlRecord)
at System.Windows.StyleHelper.LoadOptimizedTemplateContent(DependencyObject container, ParserContext parserContext, OptimizedTemplateContent optimizedTemplateContent, FrameworkTemplate frameworkTemplate, IComponentConnector componentConnector, IStyleConnector styleConnector, List`1 affectedChildren, UncommonField`1 templatedNonFeChildrenField)
at System.Windows.FrameworkTemplate.LoadContent(DependencyObject container, List`1 affectedChildren, UncommonField`1 templatedNonFeChildrenField)
at System.Windows.StyleHelper.ApplyTemplateContent(UncommonField`1 dataField, DependencyObject container, FrameworkElementFactory templateRoot, Int32 lastChildIndex, HybridDictionary childIndexFromChildID, FrameworkTemplate frameworkTemplate)
at System.Windows.FrameworkTemplate.ApplyTemplateContent(UncommonField`1 templateDataField, FrameworkElement container)
at System.Windows.FrameworkElement.ApplyTemplate()
at System.Windows.FrameworkElement.MeasureCore(Size availableSize)
at System.Windows.UIElement.Measure(Size availableSize)
at MS.Internal.Helper.MeasureElementWithSingleChild(UIElement element, Size constraint)
at System.Windows.Controls.ContentPresenter.MeasureOverride(Size constraint)
at System.Windows.FrameworkElement.MeasureCore(Size availableSize)
at System.Windows.UIElement.Measure(Size availableSize)
at System.Windows.Controls.Border.MeasureOverride(Size constraint)
at System.Windows.FrameworkElement.MeasureCore(Size availableSize)
at System.Windows.UIElement.Measure(Size availableSize)
at System.Windows.Controls.Control.MeasureOverride(Size constraint)
at System.Windows.FrameworkElement.MeasureCore(Size availableSize)
at System.Windows.UIElement.Measure(Size availableSize)
at System.Windows.Controls.DockPanel.MeasureOverride(Size constraint)
at System.Windows.FrameworkElement.MeasureCore(Size availableSize)
at System.Windows.UIElement.Measure(Size availableSize)
at System.Windows.Controls.Decorator.MeasureOverride(Size constraint)
at System.Windows.Documents.AdornerDecorator.MeasureOverride(Size constraint)
at System.Windows.FrameworkElement.MeasureCore(Size availableSize)
at System.Windows.UIElement.Measure(Size availableSize)
at System.Windows.Interop.HwndSource.SetLayoutSize()
at System.Windows.Interop.HwndSource.set_RootVisualInternal(Visual value)
at System.Windows.Interop.HwndSource.set_RootVisual(Visual value)
at System.Windows.Forms.Integration.ElementHost.OnHandleCreated(EventArgs e)
at System.Windows.Forms.Control.WmCreate(Message& m)
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.Integration.ElementHost.WndProc(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.DebuggableCallback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
at System.Windows.Forms.UnsafeNativeMethods.IntCreateWindowEx(Int32 dwExStyle, String lpszClassName, String lpszWindowName, Int32 style, Int32 x, Int32 y, Int32 width, Int32 height, HandleRef hWndParent, HandleRef hMenu, HandleRef hInst, Object pvParam)
at System.Windows.Forms.UnsafeNativeMethods.CreateWindowEx(Int32 dwExStyle, String lpszClassName, String lpszWindowName, Int32 style, Int32 x, Int32 y, Int32 width, Int32 height, HandleRef hWndParent, HandleRef hMenu, HandleRef hInst, Object pvParam)
at System.Windows.Forms.NativeWindow.CreateHandle(CreateParams cp)
at System.Windows.Forms.Control.CreateHandle()
at System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)
at System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)
at System.Windows.Forms.Control.CreateControl()
at System.Windows.Forms.Control.WmShowWindow(Message& m)
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.ScrollableControl.WndProc(Message& m)
at System.Windows.Forms.ContainerControl.WndProc(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.DebuggableCallback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
at System.Windows.Forms.UnsafeNativeMethods.IntCreateWindowEx(Int32 dwExStyle, String lpszClassName, String lpszWindowName, Int32 style, Int32 x, Int32 y, Int32 width, Int32 height, HandleRef hWndParent, HandleRef hMenu, HandleRef hInst, Object pvParam)
at System.Windows.Forms.UnsafeNativeMethods.CreateWindowEx(Int32 dwExStyle, String lpszClassName, String lpszWindowName, Int32 style, Int32 x, Int32 y, Int32 width, Int32 height, HandleRef hWndParent, HandleRef hMenu, HandleRef hInst, Object pvParam)
at System.Windows.Forms.NativeWindow.CreateHandle(CreateParams cp)
at System.Windows.Forms.Control.CreateHandle()
at System.Windows.Forms.Control.get_Handle()
at System.Windows.Forms.Integration.WindowsFormsHost.BuildWindowCore(HandleRef hwndParent)
at System.Windows.Interop.HwndHost.BuildWindow(HandleRef hwndParent)
at System.Windows.Interop.HwndHost.BuildOrReparentWindow()
at System.Windows.Interop.HwndHost.OnSourceChanged(Object sender, SourceChangedEventArgs e)
at System.Windows.SourceChangedEventArgs.InvokeEventHandler(Delegate genericHandler, Object genericTarget)
at System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)
at System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs)
at System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
at System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args)
at System.Windows.UIElement.RaiseEvent(RoutedEventArgs e)
at System.Windows.PresentationSource.UpdateSourceOfElement(DependencyObject doTarget, DependencyObject doAncestor, DependencyObject doOldParent)
at System.Windows.PresentationSource.RootChanged(Visual oldRoot, Visual newRoot)
at System.Windows.Interop.HwndSource.set_RootVisualInternal(Visual value)
at System.Windows.Interop.HwndSource.set_RootVisual(Visual value)
at System.AddIn.Pipeline.FrameworkElementAdapters.ViewToContractAdapter(FrameworkElement root)
at DRIP.AddIn.Adapter.DRIPAddInViewToContractAdapter.UrlHandler(String uri)
InnerException: System.Reflection.TargetInvocationException
Message=Exception has been thrown by the target of an invocation.
Source=mscorlib
StackTrace:
at System.RuntimeTypeHandle.CreateInstance(RuntimeType type, Boolean publicOnly, Boolean noCheck, Boolean& canBeCached, RuntimeMethodHandle& ctor, Boolean& bNeedSecurityCheck)
at System.RuntimeType.CreateInstanceSlow(Boolean publicOnly, Boolean fillCache)
at System.RuntimeType.CreateInstanceImpl(Boolean publicOnly, Boolean skipVisibilityChecks, Boolean fillCache)
at System.Activator.CreateInstance(Type type, Boolean nonPublic)
at System.Windows.Markup.BamlRecordReader.CreateInstanceFromType(Type type, Int16 typeId, Boolean throwOnFail)
InnerException: System.InvalidOperationException
Message=The calling thread cannot access this object because a different thread owns it.
Source=WindowsBase
StackTrace:
at System.Windows.Threading.Dispatcher.VerifyAccess()
at System.Windows.Threading.DispatcherObject.VerifyAccess()
at System.Windows.Application.get_MainWindow()
at Telerik.Windows.Controls.RadSlider..ctor() in c:\Builds\WPF_Scrum\Release_WPF_2010_Q3\Sources\Development\Core\Controls\Slider\RadSlider.cs:line 217
InnerException:
