public class Test{ [Display(AutoGenerateField = false)] [RangeAttribute(1, 10)] public int Id { get; set; } [DisplayName("TestNumber")] [Display(Order = 1)] [Required(AllowEmptyStrings = false, ErrorMessage = "Exception")] public string Number { get; set; } [Display(Order = 0)] [Required(AllowEmptyStrings = false, ErrorMessage = "Exception")] public string Name { get; set; }}List<Test> testList = new List<Test>();Test test = null;for (int i = 0; i < 10; i++){ test = new Test(); test.Id = i; test.Name = "Name" + i.ToString(); test.Number = i.ToString(); testList.Add(test);}radGridView.ItemsSource = testList;<Style TargetType="{x:Type TabControl}" BasedOn="{StaticResource {telerik:ThemeResourceKey ThemeType=telerik:Expression_DarkTheme, ElementType=TabControl}}" />
private void BuildDiskIoDetailsGraph(ObservableCollection<DiskIoDetails> raw, Telerik.Windows.Controls.RadChart ctrlChart, string title, bool isPrefetch)
{
if (raw.Count > 0)
{
DataSeries chartSeries = new DataSeries();
chartSeries.Definition =
new LineSeriesDefinition() { ShowItemLabels = false, ShowItemToolTips = true };
ctrlChart.SamplingSettings.SamplingThreshold = 0;
ctrlChart.DefaultView.ChartArea.EnableAnimations =
false;
ctrlChart.DefaultView.ChartLegend.Visibility =
Visibility.Collapsed;
ctrlChart.DefaultView.ChartLegend.UseAutoGeneratedItems =
true;
ctrlChart.DefaultView.ChartArea.AxisX.Step = 20f;
ctrlChart.DefaultView.ChartArea.AxisX.AutoRange =
true;
ctrlChart.DefaultView.ChartArea.AxisX.Title =
"Time";
List<object> processList = raw.Select(d => d.GetType().InvokeMember("ProcessNamePID", BindingFlags.Public | BindingFlags.Instance | BindingFlags.GetProperty, null, d, null)).Distinct().ToList();
foreach (object process in processList)
{
Color color = GetNextColor();
if (process.ToString().ToLower().StartsWith("system")) color = Colors.Blue;
if (process.ToString().ToLower().StartsWith("winlogon")) color = Colors.Maroon;
if (process.ToString().ToLower().StartsWith("idle")) color = Colors.Green;
 
chartSeries.Definition.Appearance.Foreground =
new SolidColorBrush(color);
chartSeries.Definition.Appearance.Fill =
new SolidColorBrush(color);
chartSeries.Definition.Appearance.PointMark.Fill =
new SolidColorBrush(color);
chartSeries.Definition.Appearance.Stroke =
new SolidColorBrush(Colors.LightGray);
chartSeries.Definition.Appearance.PointMark.Stroke =
new SolidColorBrush(color);
List<DiskIoDetails> dataList = raw.Where(d => d.GetType().InvokeMember("ProcessNamePID", BindingFlags.Public | BindingFlags.Instance | BindingFlags.GetProperty, null, d, null).ToString().Equals(process.ToString())).ToList();
foreach (object item in dataList)
{
string startTime = item.GetType().InvokeMember("StartTime", BindingFlags.Public | BindingFlags.Instance | BindingFlags.GetProperty, null, item, null).ToString();
string offset = item.GetType().InvokeMember("ByteOffset", BindingFlags.Public | BindingFlags.Instance | BindingFlags.GetProperty, null, item, null).ToString().TrimStart("0x".ToCharArray());
string ioType = item.GetType().InvokeMember("IOType", BindingFlags.Public | BindingFlags.Instance | BindingFlags.GetProperty, null, item, null).ToString();
string endTime = item.GetType().InvokeMember("EndTime", BindingFlags.Public | BindingFlags.Instance | BindingFlags.GetProperty, null, item, null).ToString();
string processName = item.GetType().InvokeMember("ProcessNamePID", BindingFlags.Public | BindingFlags.Instance | BindingFlags.GetProperty, null, item, null).ToString();
if (ioType.ToLower().Contains("read")) ioType = "Read";
else ioType = "Write";
if (string.IsNullOrEmpty(offset)) offset = "0";
if (chartSeries != null)
{
double initTime = Convert.ToDouble(startTime) / _nsPerSec;
double complete = Convert.ToDouble(endTime) / _nsPerSec;
DataPoint dp = new DataPoint( (Convert.ToDouble(startTime) / _nsPerSec),long.Parse(offset, System.Globalization.NumberStyles.HexNumber));
dp.Tooltip =
string.Format("{0}{1}InitTime: {2}{1}Complete Time: {3}{1}{4}", ioType, Environment.NewLine, initTime, complete, processName);
chartSeries.Add(dp);
//m_Line.Interactivity.Tooltips.Add(string.Format("{0}{1}InitTime: {2}{1}Complete Time: {3}{1}{4}", ioType, Environment.NewLine, initTime, complete, processName));
}
}
}
ctrlChart.DefaultView.ChartArea.DataSeries.Add(chartSeries);
}
}
 
<Window x:Class="HierarchiyGridSuccess.MainWindow" xmlns:telerikData="clr-namespace:Telerik.Windows.Data;assembly=Telerik.Windows.Data" xmlns:telerik="http://schemas.telerik.com/2008/xaml/presentation" Title="MainWindow" Height="350" Width="525"> <Grid> <Grid.RowDefinitions> <RowDefinition Height="Auto"/> <RowDefinition Height="Auto"/> </Grid.RowDefinitions> <telerik:RadGridView Grid.Row="0" x:Name="rgvData" ShowInsertRow="True" AutoGenerateColumns="False" telerik:Theming.Theme="Windows7" ItemsSource="{Binding}" > <telerik:RadGridView.ChildTableDefinitions> <telerik:GridViewTableDefinition /> </telerik:RadGridView.ChildTableDefinitions> <telerik:RadGridView.Columns> <telerik:GridViewDataColumn DataMemberBinding="{Binding StudentID}" Header="Student ID" /> <telerik:GridViewDataColumn DataMemberBinding="{Binding StudentFN}" Header="Student First Name" /> <telerik:GridViewDataColumn DataMemberBinding="{Binding StudentLN}" Header="Student Last Name" /> </telerik:RadGridView.Columns> <telerik:RadGridView.HierarchyChildTemplate> <DataTemplate> <telerik:RadGridView x:Name="RadGridView1" Loaded="rgvData_Loaded" AutoGenerateColumns="False" ShowInsertRow="False" CanUserInsertRows="False" ItemsSource="{Binding Subjects}" ShowGroupPanel="False" IsReadOnly="False"> <telerik:RadGridView.Columns> <telerik:GridViewDataColumn DataMemberBinding="{Binding SubjectName}" Header="Subject Name" /> <telerik:GridViewDataColumn DataMemberBinding="{Binding SubjectProf}" Header="Professor" /> </telerik:RadGridView.Columns> </telerik:RadGridView> </DataTemplate> </telerik:RadGridView.HierarchyChildTemplate> </telerik:RadGridView> <Button Content="Save!" Width="Auto" Height="Auto" Grid.Row="1" Click="Button_Click" /> </Grid></Window>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 System.Collections.Specialized;using Telerik.Windows.Controls;using Telerik.Windows.Controls.GridView;namespace HierarchiyGridSuccess{ /// <summary> /// Interaction logic for MainWindow.xaml /// </summary> public partial class MainWindow : Window { DataAccessDataContext m_dcData; public MainWindow() { InitializeComponent(); this.Loaded += new RoutedEventHandler(MainWindow_Loaded); this.rgvData.Items.CollectionChanged += new NotifyCollectionChangedEventHandler(Items_CollectionChanged); rgvData.Filtered += new EventHandler<Telerik.Windows.Controls.GridView.GridViewFilteredEventArgs>(rgvData_Filtered); } void rgvData_Loaded(object sender, RoutedEventArgs e) { var childGrid = (RadGridView)sender; var parentRow = childGrid.ParentRow; if (parentRow != null) { rgvData.SelectedItem = childGrid.DataContext; parentRow.IsExpandedChanged += new RoutedEventHandler(parentRow_IsExpandedChanged); } } void parentRow_IsExpandedChanged(object sender, RoutedEventArgs e) { rgvData.SelectedItem = ((GridViewRow)sender).DataContext; } void rgvData_Filtered(object sender, Telerik.Windows.Controls.GridView.GridViewFilteredEventArgs e) { rgvData.ItemsSource = m_dcData.Students; } private void Items_CollectionChanged(object sender, NotifyCollectionChangedEventArgs e) { try { if (e.Action == NotifyCollectionChangedAction.Add) { foreach (Student item in e.NewItems) { this.m_dcData.Students.InsertAllOnSubmit(e.NewItems.OfType<Student>()); } } if (e.Action == NotifyCollectionChangedAction.Remove) { this.m_dcData.Students.DeleteAllOnSubmit(e.OldItems.OfType<Student>()); } } catch (Exception s) { } } void MainWindow_Loaded(object sender, RoutedEventArgs e) { m_dcData = new DataAccessDataContext(); m_dcData.Log = Console.Out; DataContext = m_dcData.Students; rgvData.ShowInsertRow = true; } private void Button_Click(object sender, RoutedEventArgs e) { var changes = this.m_dcData.GetChangeSet(); rgvData.BeginInsert(); MessageBox.Show(string.Format("There are {0} inserts and {1} deletes pending.", changes.Inserts.Count, changes.Deletes.Count)); m_dcData.SubmitChanges(); } }}|
Enter Name |
Text Box |
|
Department |
Combo box |
|
Gender |
Radio button |
|
Save |
Button |
Is it possible to create inside radgrid view ?
if possible mean give me some coding guidlines.
if not posible mean than which control i used to create these structure.
thank you.
if (!RadDragAndDropManager.IsDragging) { Collection<object> pPayload = new Collection<object>(); if (e.Data is System.Windows.DataObject && ((System.Windows.DataObject)e.Data).ContainsFileDropList()) { foreach (string pFilePath in ((System.Windows.DataObject)e.Data).GetFileDropList()) { if (File.Exists(pFilePath)) { pPayload.Add(pFilePath); } } } if (pPayload.Count > 0) { RadDragAndDropManager.StartDrag(TrackListTreeListView, pPayload, null); } }