<Style TargetType="telerik:RadToolTip" x:Key="{telerik:ThemeResourceKey ThemeType= external:Office_SilverThemeExternal , ElementType=telerik:RadToolTip}" ><Style TargetType="telerik:RadToolTip" BasedOn="{StaticReference ResourceKey={telerik:ThemeResourceKey ThemeType= external:Office_SilverThemeExternal , ElementType=telerik:RadToolTip}}" ><ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:external="clr-namespace:Telerik.Windows.Controls.External" >
I have used RadGridViews(Telerik.Windows.Controls.GridView) in WPF that has some column. The
header of column is a CheckBox. Some times header CheckBox content binding is works fine, but when i changed to another form and return back to the same form CheckBox content binding doesn't work ie, its not showing the CheckBox contant.
the code is below
<telerikGrid:RadGridView >
<telerikGrid:RadGridView.Columns>
<telerikGrid:GridViewDataColumn DataMemberBinding="{Binding Name}" >
<telerikGrid:GridViewBoundColumnBase.Header >
<CheckBox IsChecked="False" Content="{Binding RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type telerikGrid:RadGridView}}, Path=DataContext.HeaderName}" />
</telerikGrid:GridViewBoundColumnBase.Header>
</telerikGrid:GridViewDataColumn>
</telerikGrid:RadGridView >
its shows some time like this
any solution pls send me, very urgent..
thanks
Govind
Problem:
In my application I am displaying data in grid. I also want a radio button to be inserted in 1 st column. On the selection of that radio button new pop-up screen should appear having details of the selected row.
I am using Telerik:RadGridView to display data . I am able to fetch the data and display.
I am getting around 4000 records fetched, now when i select a radio button and scroll down the selected row is deselected and some other random row gets selected.Sometimes no rows gets selected.
Approach followed:
I have followed following approach using virtualization
Inside my RadGridView i worte
VirtualizingStackPanel.IsVirtualizing
="True"
ScrollMode="RealTime"
VirtualizingStackPanel.VirtualizationMode="Recycling"
ScrollViewer.IsDeferredScrollingEnabled="True"
and
<telerik:GridViewDataColumn Header="" Width="35" DataMemberBinding="{Binding IsSelected, Mode=TwoWay}">
<telerik:GridViewDataColumn.CellTemplate>
<DataTemplate>
<RadioButton Click="radEditGroup_Click" HorizontalAlignment="Center" Checked="radEditGroup_Checked" IsChecked="{Binding Path=IsSelected, Mode=TwoWay}" x:Name="radEditGroup" GroupName="Groups" />
</DataTemplate>
</telerik:GridViewDataColumn.CellTemplate>
</telerik:GridViewDataColumn>
In .cs file for Checked ="radEditGroup_Checked" i looped through groups and deselected the radio buttons and displayed last checked button value.
private
void radEditGroup_Checked(object sender, RoutedEventArgs e)
{
try
{
ClearMessage();
if ((sender as RadioButton) != null &&
((sender
as RadioButton).DataContext as Groups) != null)
{
var lobjSelectedGroups = from lobGroup in _Groups
where lobGroup.IsSelected == true
select lobGroup;
if (lobjSelectedGroups != null)
{
foreach (Groups lobGroup in lobjSelectedGroups)
{
lobGroup.IsSelected =
false;
}
}
this._intGroupID = ((sender as RadioButton).DataContext as Groups).FUNCTION_GRP_ID;
this._intFunctionId = ((sender as RadioButton).DataContext as Groups).Function_Id;
(sender
as RadioButton).Checked -= radEditGroup_Checked;
(sender
as RadioButton).IsChecked = true;
(sender
as RadioButton).Checked += radEditGroup_Checked;
}
}
catch (Exception objEx)
{
ErrorHandling.CatchAllExceptions(objEx);
}
}
Issue facing:
When i am selecting the radio button and scrolling down Checked event gets called and slected row gets deselected.
How can i ensure that the radio button which is checked remain same even when i scoll up and down.
<Window.Resources> <DataTemplate x:Key="PanelBarItemTemplate"> <StackPanel Orientation="Vertical"> <TextBlock Text="{Binding PropertyName}"/> <TextBlock Text="{Binding PropertyValue}"/> <TextBlock Text="{Binding Comments}"/> </StackPanel> </DataTemplate> <HierarchicalDataTemplate x:Key="PanelBarHeaderTemplate" ItemsSource="{Binding Items,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}" ItemTemplate="{StaticResource PanelBarItemTemplate}"> <TextBlock Text="{Binding Title}" /> </HierarchicalDataTemplate> </Window.Resources> <Grid> <DockPanel> <DockPanel DockPanel.Dock="Right" Width="350"> <Label /> </DockPanel> <DockPanel DockPanel.Dock="Right" VerticalAlignment="Bottom"> <telerik:RadPanelBar ItemsSource="{Binding AccordionItems,UpdateSourceTrigger=PropertyChanged,Mode=TwoWay}" ItemTemplate="{StaticResource PanelBarHeaderTemplate}" telerik:StyleManager.Theme="Windows7"/> </DockPanel> </DockPanel> </Grid>public class MainViewModel:ViewModelBase { public MainViewModel() { _accordionItems = new List<AccoordionHelper>(); AccordionItems = new List<AccoordionHelper>(); _accordionItems.Add(new AccoordionHelper("OffFinalBill", new AccordionItemsHelper(){ Comments="hello", PropertyName="Off Final 1: ", PropertyValue= "12121" })); _accordionItems.Add(new AccoordionHelper("PartFinal", new AccordionItemsHelper() { Comments = "hello", PropertyName = "Off Final 1: ", PropertyValue = "12121" })); AccordionItems = _accordionItems; } private List<AccoordionHelper> _accordionItems = new List<AccoordionHelper>(); public List<AccoordionHelper> AccordionItems { get { if (_accordionItems == null) { _accordionItems = new List<AccoordionHelper>(); } return _accordionItems; } set { _accordionItems = value; this.RaisePropertyChanged("AccordionItems"); } } } public class AccoordionHelper:ViewModelBase { private string _title; public string Title { get { return _title; } set { _title = value; this.RaisePropertyChanged("Title"); } } private AccordionItemsHelper _items; public AccordionItemsHelper Items { get { if (_items == null) { _items = new AccordionItemsHelper(); } return _items; } set { _items = value; this.RaisePropertyChanged("Items"); } } public AccoordionHelper( string title, AccordionItemsHelper items) { Items=items; Title = title; } } public class AccordionItemsHelper { public string PropertyName { get; set; } public string PropertyValue { get; set; } public string Comments { get; set; } }