Telerik Forums
UI for WPF Forum
0 answers
94 views
Dear Telerik Team Member
Hiii can anyone help me i have very common issue.I m making hospital managment software and i want to keep track of appointents in sql 2008 using linq which are made on rad-schedulerview..one more issue i want to make customs appointment window like it have one combobox which get data from database,on selecting value from combobox i retrive other value on text box then show that information on 
rad-schedulerview's appointment panel i mean on that small note which will place on timeline

Thanks In Advance
Kaustubh
Kaustubh
Top achievements
Rank 1
 asked on 16 Mar 2012
14 answers
685 views
We have implemented the WPF expander. however on first click on the closed expander, nothing occurs. User has to click twice for expander to function. Subsequent to that, exoander works fine. Any suggestions?
recotech
Top achievements
Rank 1
 answered on 16 Mar 2012
1 answer
222 views
I have a treeview with tri-state mode enabled bound to a hierachical data source. When I check some children of a node (but not all), a red adorner border surrounds the whole RadTreeViewItem. A screenshot is attached.

How do I disable this border?

RadTreeView XAML:

<telerik:RadTreeView
            telerik:AnimationManager.IsAnimationEnabled="False"
            Grid.Row="0"
            ItemsSource="{Binding ElementName=ElementRoot, Path=RoleList}"
            SelectedItem="{Binding ElementName=ElementRoot, Path=SelectedRole, Mode=TwoWay}"
            ItemContainerStyle="{StaticResource ApplicationTreeViewStyle}"
            IsOptionElementsEnabled="True"
            ItemsOptionListType="CheckList"
            IsTriStateMode="True"
            DropExpandDelay="00:00:00"
            ScrollViewer.HorizontalScrollBarVisibility="Auto"
            ScrollViewer.VerticalScrollBarVisibility="Auto" />

HierarchicalDataTemplate:

<HierarchicalDataTemplate
    DataType="{x:Type Models:Role}"
    ItemsSource="{Binding Children}">
    <TextBlock
        Text="{Binding DisplayName}" />
</HierarchicalDataTemplate>

RadTreeViewItemStyle:

<Style x:Key="ApplicationTreeViewStyle" TargetType="{x:Type telerik:RadTreeViewItem}">
    <Setter
        Property="IsSelected"
        Value="{Binding Path=Selected, Mode=TwoWay}"/>
    <Setter
        Property="CheckState"
        Value="{Binding Path=Checked, Mode=TwoWay, Converter={StaticResource Bool2ToggleConverter}}"/>
    <Setter
        Property="IsExpanded"
        Value="{Binding Path=Expanded, Mode=TwoWay}" />
</Style>


Thank you,

James
Petar Mladenov
Telerik team
 answered on 16 Mar 2012
6 answers
1.3K+ views
Hi,

in my project I have a RadGridView with all features enable: Sorting, Grouping, etc...

In my grid, I have a GridViewSelectColumn to let my users to select all the rows they want. With this kind of column, I think, the logical pattern was respected by having a checkbox in the header to select/unselect all the rows in the grid. I'm trying to get an answer why this kind of column is missing when you grouping data. What should I do if I group a set of data by date and for a specific date I want to select all the subset items (more than 500 items)???

I'm trying to implement something but I don't know how to acheive it. Actually, I have a problem with the interaction of the groupcheckbox and the rest of the grid. I need to have my groupcheckbox to react the same has the header one, I mean, if I click a on of my groupcheckbox, I need to select all teh group subset and of course, if that mean that all data in the grid is selected after my click, of course the header checkbox should become check. Of course, my groupcheckbox should react to the fact that not all subset data was selected or not by becoming check or not. If the master header checkbox in the header should check all my groupcheckbox and so on...

Please help me, I know I'm not for from the solution ;)

Window1.xaml
------------------
<Window x:Class="RadControlsWpfApp6.Window1"
  xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
  xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
  xmlns:telerik="http://schemas.telerik.com/2008/xaml/presentation"               
        xmlns:alain="clr-namespace:RadControlsWpfApp6"
  Title="Window1" Height="300" Width="300" WindowState="Maximized" Name="Me">
  <Grid>
        <telerik:RadGridView x:Name="grid" AutoGenerateColumns="False" IsReadOnly="True" RowIndicatorVisibility="Collapsed" SelectionMode="Multiple" PreviewMouseLeftButtonUp="grid_PreviewMouseLeftButtonUp" SelectionChanged="grid_SelectionChanged">
            <telerik:RadGridView.GroupHeaderTemplate>
                <DataTemplate>
                    <StackPanel Orientation="Horizontal" >
                        <alain:GridViewGroupCheckBox x:Name="GroupCheckBox"/>
                        <TextBlock Margin="5 0" Text="{Binding Group.Key}" />
                    </StackPanel>
                </DataTemplate>
            </telerik:RadGridView.GroupHeaderTemplate>
            <telerik:RadGridView.Columns>
                <telerik:GridViewSelectColumn />
                <telerik:GridViewDataColumn DataMemberBinding="{Binding Path=LastName}" Header="LastName" />
                <telerik:GridViewDataColumn DataMemberBinding="{Binding Path=FirstName}" Header="FirstName" />
            </telerik:RadGridView.Columns>
        </telerik:RadGridView>
    </Grid>
</Window>


Window1.xaml.cs
---------------------

using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Shapes;

using Telerik.Windows.Controls;
using Telerik.Windows.Controls.GridView;
using Telerik.Windows.Data; 

namespace RadControlsWpfApp6
{
    /// <summary>
    /// Interaction logic for Window1.xaml
    /// </summary>
    public partial class Window1 : Window
    {
        public Window1()
        {
            InitializeComponent();
           
            AllPersons = new List<Person>();

            AllPersons.Add(new Person() { LastName = "Test2", FirstName = "Test1" });
            AllPersons.Add(new Person() { LastName = "Test1", FirstName = "Test2" });
            AllPersons.Add(new Person() { LastName = "Test2", FirstName = "Test1" });

            grid.ItemsSource = AllPersons;
        }

        public List<Person> AllPersons { get; set; }

        private void grid_PreviewMouseLeftButtonUp(object sender, MouseButtonEventArgs e)
        {
            var senderElement = (FrameworkElement)e.OriginalSource;
            var clickedCell = senderElement.ParentOfType<GridViewHeaderCell>();

            if (clickedCell != null)
            {
                CheckBox chkHeader = clickedCell.Column.Header as CheckBox;
                if (chkHeader != null)
                {
                    IEnumerable<GridViewGroupRow> grpRows = grid.ChildrenOfType<GridViewGroupRow>();
                    GridViewGroupCheckBox.CheckUncheckItems(true, !(bool)chkHeader.IsChecked, grpRows);
                }
            }
        }

        private void grid_SelectionChanged(object sender, SelectionChangeEventArgs e)
        {
            GridViewItemContainerGenerator container = this.grid.ItemContainerGenerator;
                       
            foreach (var oneItem in e.AddedItems)
            {                               
                object obj = container.ContainerFromItem(oneItem);               
            }

            foreach (var oneItem in e.RemovedItems)
            {
            }
        }
    }

    public class Person
    {
        public string LastName { get; set; }
        public string FirstName { get; set; }
    }
}



GridViewGroupCheckBox.xaml
--------------------------------------
<UserControl x:Class="RadControlsWpfApp6.GridViewGroupCheckBox"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Height="Auto" Width="Auto">
    <Grid>
        <CheckBox x:Name="cbGroup" Click="cbGroup_Click" />
    </Grid>
</UserControl>


GridViewGroupCheckBox.xaml.cs
------------------------------------------

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;

using Telerik.Windows.Controls;
using Telerik.Windows.Controls.GridView;
using Telerik.Windows.Data;

namespace RadControlsWpfApp6
{
    /// <summary>
    /// Interaction logic for GridViewGroupCheckBox.xaml
    /// </summary>
    public partial class GridViewGroupCheckBox : UserControl
    {
        #region Constructors.
        /// <summary>
        /// Costructor.
        /// </summary>
        public GridViewGroupCheckBox()
        {
            InitializeComponent();
            mIsChecked = false;
        }
        #endregion

        #region Public properties.
        public bool IsChecked
        {
            get
            {
                return mIsChecked;
            }
            set
            {
                if (mIsChecked != value)
                {
                    mIsChecked = value;
                    cbGroup.IsChecked = mIsChecked;
                }
            }
        }

        public GridViewGroupRow GroupRow
        {
            get
            {
                return cbGroup.ParentOfType<GridViewGroupRow>();
            }
        }
        #endregion.

        #region Private event handlers.
        /// <summary>
        /// CheckBox click triggered.
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>       
        private void cbGroup_Click(object sender, RoutedEventArgs e)
        {
            mIsChecked = (bool)(sender as CheckBox).IsChecked;
            applyChangesOnGrid(sender as CheckBox);
        }
        #endregion

        #region Private medthods.
        /// <summary>
        /// Apply changes
        /// </summary>
        /// <param name="pCheckBox"></param>
        private void applyChangesOnGrid(CheckBox pCheckBox)
        {
            CheckUncheckItems(false, (bool)pCheckBox.IsChecked, this.GroupRow);

            IEnumerable<GridViewGroupRow> groupsChildRows = this.GroupRow.ChildrenOfType<GridViewGroupRow>();
            CheckUncheckItems(false, (bool)pCheckBox.IsChecked, groupsChildRows);
        }

        /// <summary>
        /// Select/unselect all items in a group.
        /// </summary>
        /// <param name="pCheck">TRUE to select or FALSE to unselect.</param>
        /// <param name="pGroupRows">Group of rows.</param>
        static public void CheckUncheckItems(bool pIsInAllSelectionMode, bool pCheck, GridViewGroupRow pGroupRows)
        {
            if (!pIsInAllSelectionMode)
            {
                var theGrid = pGroupRows.ParentOfType<GridViewDataControl>();
                IEnumerable<CheckBox> allCheckBox = pGroupRows.ChildrenOfType<CheckBox>();

                if (allCheckBox != null)
                {
                    foreach (CheckBox oneCheckBox in allCheckBox)
                    {
                        oneCheckBox.IsChecked = pCheck;
                    }
                }

                if (theGrid != null)
                {
                    foreach (var item in pGroupRows.Items)
                    {
                        if (pCheck)
                        {
                            theGrid.SelectedItems.Add(item);
                        }
                        else
                        {
                            theGrid.SelectedItems.Remove(item);
                        }
                    }
                }
            }
        }

        /// <summary>
        /// For each sub group rows, select/unselect all items in a group.
        /// </summary>       
        /// <param name="pCheck">TRUE to select or FALSE to unselect.</param>
        /// <param name="pGroupsRows">List of groups rows.</param>
        static public void CheckUncheckItems(bool pIsInAllSelectionMode, bool pCheck, IEnumerable<GridViewGroupRow> pGroupsRows)
        {
            foreach (GridViewGroupRow oneGroupRow in pGroupsRows)
            {
                CheckUncheckItems(pIsInAllSelectionMode, pCheck, oneGroupRow);
            }
        }
        #endregion

        #region Private declarations.
        private bool mIsChecked;
        #endregion
    }
}




Thank's
Oliver
Top achievements
Rank 1
 answered on 16 Mar 2012
2 answers
49 views

Hello,
I have a problem with the title of the views. In my case I have 5 views:
1 - dayview
2 - WeekView
3 - WorkWeekView
4 - MonthView
5 - TimeLineView
I noticed that when I switch to workWeekView, I get the title of dayview.
I could tell how to fix this?

Thanks!

Georgi
Telerik team
 answered on 16 Mar 2012
1 answer
145 views
Hello,

i try to set the MaxWidth of a RadNumericUpDown to a Value of 20, but the ActualWidth is allways 60. Is this a bug or am I doing something wrong?

<telerik:RadNumericUpDown Name="numeric" MaxWidth="20" ShowButtons="False" ></telerik:RadNumericUpDown>


Georgi
Telerik team
 answered on 16 Mar 2012
2 answers
142 views
Good morning,

There seems to be an issue where the content of a RadTileViewItem is not visible when using the MetroTheme.
If I remove the metro theme or use a different theme then the content is visible again.

Application wide theme:
StyleManager.ApplicationTheme = new MetroTheme();

TileView control:
<telerik:RadTileView MaximizeMode="ZeroOrOne" RowHeight="200" ColumnWidth="250">
            <telerik:RadTileViewItem Header="Berkeley Park">
                <TextBlock>Test</TextBlock>
            </telerik:RadTileViewItem>
            <telerik:RadTileViewItem Header="Posh Park Developments">
                <TextBlock Margin="10">Test</TextBlock>
            </telerik:RadTileViewItem>
            <telerik:RadTileViewItem Header="King Park">
                <TextBlock Margin="10">Test</TextBlock>
            </telerik:RadTileViewItem>
            <telerik:RadTileViewItem Header="King Park">
                <TextBlock Margin="10">Test</TextBlock>
            </telerik:RadTileViewItem>
            <telerik:RadTileViewItem Header="King Park">
                <TextBlock Margin="10">Test</TextBlock>
            </telerik:RadTileViewItem>
        </telerik:RadTileView>
Robert
Top achievements
Rank 1
 answered on 16 Mar 2012
5 answers
114 views
Hi,

how can i find a row in a child grid?

before i  periodly update my itemssource for my Hierachical Gridview i save my current selecteditem in a childgrid.
After i update the Itemsource i want to expand the same parentitem and select the same Childitem as before.

How can i do this?

I hope you can understand what i mean. Sorry for my bad english

grettings Johann
Johann
Top achievements
Rank 1
 answered on 16 Mar 2012
3 answers
524 views
Hi. 
I have a RadTabControl with a data bound ItemTemplate.

I am trying to tweak the data template or radtabcontrol styling so that the individual tabs will be clearly separated for the user.

The DataTemplate is a grid. If I set the background of the grid, I get a rectangular background (ie the shape of the grid instance) that does not match the nice outline with rounded corners that is highlighted when you hover over the item with the mouse. The datatemplate item does not have a background (obviously) and setting the the TabHeaderBackGround on the RadTabControl causes the entire header (tab headers as well as the canvas backgrounds) to have this background so this does not cause the individual selectable tabs to stand out, either.

How do I set a color for the same area that is highlighted when the the mouse hovers over a tab item?
Petar Mladenov
Telerik team
 answered on 16 Mar 2012
5 answers
165 views

Hi guys,

how can I use the RadmaskedDateTimeInput scheme inside a Gridview Cell ?
I tried building my GridViewDataColum with

 

DataFormatString

 

 

="{} {0:dd.MM.yyyy}"
but there I have to type the periods, too.

I'd like to have the same behaviour as in the edit field.
I only want to type the numbers, as in:

 

telerik

 

 

:RadMaskedDateTimeInput Mask="dd.MM.yyyy"

best regards
Torsten

 

Dimitrina
Telerik team
 answered on 16 Mar 2012
Narrow your results
Selected tags
Tags
+? more
Top users last month
Will
Top achievements
Rank 2
Iron
Motti
Top achievements
Rank 1
Iron
Hester
Top achievements
Rank 1
Iron
Bob
Top achievements
Rank 3
Iron
Iron
Veteran
Thomas
Top achievements
Rank 2
Iron
Want to show your ninja superpower to fellow developers?
Top users last month
Will
Top achievements
Rank 2
Iron
Motti
Top achievements
Rank 1
Iron
Hester
Top achievements
Rank 1
Iron
Bob
Top achievements
Rank 3
Iron
Iron
Veteran
Thomas
Top achievements
Rank 2
Iron
Want to show your ninja superpower to fellow developers?
Want to show your ninja superpower to fellow developers?