I want to make it so when I select a row in the GridView, i can get the string inside the first column (or 20th).
I am currently able to get ALL the information in the whole row with dataGrid1.SelectedItem.ToString(); and I could just chop that information up by a series of "Substring" operations, but there has to be a better way!
Getting this cell data by index (an integer 0-19) would be okay.
Getting the cell data by column header name would be okay as well.
Is this possible?
I am currently able to get ALL the information in the whole row with dataGrid1.SelectedItem.ToString(); and I could just chop that information up by a series of "Substring" operations, but there has to be a better way!
Getting this cell data by index (an integer 0-19) would be okay.
Getting the cell data by column header name would be okay as well.
Is this possible?
5 Answers, 1 is accepted
0

Jeff
Top achievements
Rank 1
answered on 14 Jan 2014, 01:28 AM
var query =
from person in dataEntities.cs_people
orderby person.personId
select new { person.personId, person.Name, person.Address, person.Age };
dataGrid1.ItemsSource = query.ToList();
That is how I bound data to my dataGrid1...
So, each row is equal to something like { personId = 456218, Name = Jennifer, Address = 1213 Fake St., Age = 21 }
and the RadGridView populates the visual aspect of this perfectly.
I tried accessing personId field in a selectedItem with: (dataGrid1.SelectedItem).personId, but that does not work.
from person in dataEntities.cs_people
orderby person.personId
select new { person.personId, person.Name, person.Address, person.Age };
dataGrid1.ItemsSource = query.ToList();
That is how I bound data to my dataGrid1...
So, each row is equal to something like { personId = 456218, Name = Jennifer, Address = 1213 Fake St., Age = 21 }
and the RadGridView populates the visual aspect of this perfectly.
I tried accessing personId field in a selectedItem with: (dataGrid1.SelectedItem).personId, but that does not work.
0
Hello Jeff,
In order to get a property of the selected item, you would have to specify the type of the selected item.
For example the following expression based on your code var person = (dataGrid1.SelectedItem as Person (the name the class holding person data) ).personId should fix your issue.
You can read more about item selection in our onlinde documentation located here.
Regards,
Hristo
Telerik
In order to get a property of the selected item, you would have to specify the type of the selected item.
For example the following expression based on your code var person = (dataGrid1.SelectedItem as Person (the name the class holding person data) ).personId should fix your issue.
You can read more about item selection in our onlinde documentation located here.
Regards,
Hristo
Telerik
TRY TELERIK'S NEWEST PRODUCT - EQATEC APPLICATION ANALYTICS for WPF.
Learn what features your users use (or don't use) in your application. Know your audience. Target it better. Develop wisely.
Sign up for Free application insights >>
Learn what features your users use (or don't use) in your application. Know your audience. Target it better. Develop wisely.
Sign up for Free application insights >>
0

Jeff
Top achievements
Rank 1
answered on 14 Jan 2014, 04:42 PM
Thanks for the reply, Hiristo!
If I created a class like:
How would I get my database information into the RadGridView as a "Person"? Right now, I have the information going in as an "IEnumerable", then casting it as a list for dataGrid1.Itemsource.
I tried:
However, it does not appear that ItemSource can take a list like that.
Many thanks in advance!
If I created a class like:
public
class
Person {
public
string
personId;
public
string
Name;
public
string
Address;
public
string
Age;
}
How would I get my database information into the RadGridView as a "Person"? Right now, I have the information going in as an "IEnumerable", then casting it as a list for dataGrid1.Itemsource.
I tried:
var query =
from person
in
dataEntities.cs_people
orderby person.personId
select
new
Person { personId = person.personId, Name = person.Name, Address = person.Address, Age = person.Age };
dataGrid1.ItemsSource = query.ToList();
However, it does not appear that ItemSource can take a list like that.
Many thanks in advance!
0

Jeff
Top achievements
Rank 1
answered on 14 Jan 2014, 04:51 PM
Hmm...
When I call "var person = (dataGrid1.SelectedItem as Person).personId"
it gives a Null Reference Exception.
I know it's not null because I am using the selectedItem elsewhere.
When I call "var person = (dataGrid1.SelectedItem as Person).personId"
it gives a Null Reference Exception.
I know it's not null because I am using the selectedItem elsewhere.
0
Hi Jeff,
In your person class you should create public properties to store the information. You can find more information on how to set the properties in the following msdn article: link.
For a sample Person class please see the following code snippet:
One possible reason for the Null Reference Exception is that your class doesn't have a constructor which accepts parameters.
You can also find more information on how to load data into RadGridView from different sources on the following link: link.
Regards,
Hristo
Telerik
In your person class you should create public properties to store the information. You can find more information on how to set the properties in the following msdn article: link.
For a sample Person class please see the following code snippet:
public
class
Person
{
public
string
PersonId {
get
;
set
;}
public
string
Name {
get
;
set
;}
public
string
Address {
get
;
set
;};
public
string
Age {
get
;
set
;}
public
Person(
string
PersonId,
string
Name,
string
Address,
string
Age)
{
this
.PersonId = personId;
this
.Name = Name;
this
.Address = Address;
this
.Age = Age;
}
}
One possible reason for the Null Reference Exception is that your class doesn't have a constructor which accepts parameters.
You can also find more information on how to load data into RadGridView from different sources on the following link: link.
Regards,
Hristo
Telerik
TRY TELERIK'S NEWEST PRODUCT - EQATEC APPLICATION ANALYTICS for WPF.
Learn what features your users use (or don't use) in your application. Know your audience. Target it better. Develop wisely.
Sign up for Free application insights >>
Learn what features your users use (or don't use) in your application. Know your audience. Target it better. Develop wisely.
Sign up for Free application insights >>