Hello,
I use IValueConverter to calculate a column value based on other two column values. The problem is that when I edit the cell value and press Enter I get the next gridview row in IValueConverter. Do you know what the problem is? I use the code below on a UserControl.
this
.clubsGrid.ItemsSource = EvolucionMercados.GetClubs();
public
static
IEnumerable<Club> GetClubs()
{
ObservableCollection<Club> clubs =
new
ObservableCollection<Club>();
Club club;
// Liverpool
club =
new
Club(
"Liverpool"
,
new
DateTime(1892, 1, 1), 45362, 50.99f);
club.Players.Add(
new
Player(
"Pepe Reina"
, 25, Position.GK,
"Spain"
));
club.Players.Add(
new
Player(
"Jamie Carragher"
, 23, Position.DF,
"England"
));
club.Players.Add(
new
Player(
"Steven Gerrard"
, 8, Position.MF,
"England"
));
club.Players.Add(
new
Player(
"Fernando Torres"
, 9, Position.FW,
"Spain"
));
clubs.Add(club);
// Manchester Utd.
club =
new
Club(
"Manchester Utd."
,
new
DateTime(1878, 1, 1), 76212, 60.49f);
club.Players.Add(
new
Player(
"Edwin van der Sar"
, 1, Position.GK,
"Netherlands"
));
club.Players.Add(
new
Player(
"Rio Ferdinand"
, 5, Position.DF,
"England"
));
club.Players.Add(
new
Player(
"Ryan Giggs"
, 11, Position.MF,
"Wales"
));
club.Players.Add(
new
Player(
"Wayne Rooney"
, 10, Position.FW,
"England"
));
clubs.Add(club);
// Chelsea
club =
new
Club(
"Chelsea"
,
new
DateTime(1905, 1, 1), 42055, 70.99f);
club.Players.Add(
new
Player(
"Petr Čech"
, 1, Position.GK,
"Czech Republic"
));
club.Players.Add(
new
Player(
"John Terry"
, 26, Position.DF,
"England"
));
club.Players.Add(
new
Player(
"Frank Lampard"
, 8, Position.MF,
"England"
));
club.Players.Add(
new
Player(
"Nicolas Anelka"
, 39, Position.FW,
"France"
));
clubs.Add(club);
// Arsenal
club =
new
Club(
"Arsenal"
,
new
DateTime(1886, 1, 1), 60355, 35.19f);
club.Players.Add(
new
Player(
"Manuel Almunia"
, 1, Position.GK,
"Spain"
));
club.Players.Add(
new
Player(
"Gaël Clichy"
, 22, Position.DF,
"France"
));
club.Players.Add(
new
Player(
"Cesc Fàbregas"
, 4, Position.MF,
"Spain"
));
club.Players.Add(
new
Player(
"Robin van Persie"
, 11, Position.FW,
"Netherlands"
));
clubs.Add(club);
return
clubs;
}
<
telerik:RadGridView
Name
=
"clubsGrid"
Grid.Row
=
"0"
AutoGenerateColumns
=
"False"
>
<
telerik:RadGridView.Columns
>
<
telerik:GridViewDataColumn
Header
=
"Name"
DataMemberBinding
=
"{Binding Name}"
>
</
telerik:GridViewDataColumn
>
<
telerik:GridViewDataColumn
Header
=
"Est."
DataMemberBinding
=
"{Binding Established}"
DataFormatString
=
"{}{0:yyyy}"
>
</
telerik:GridViewDataColumn
>
<
telerik:GridViewDataColumn
Header
=
"Stadium Capacity"
DataMemberBinding
=
"{Binding StadiumCapacity}"
DataFormatString
=
"{}{0:N0}"
>
</
telerik:GridViewDataColumn
>
<
telerik:GridViewDataColumn
Header
=
"Ticket Price"
DataMemberBinding
=
"{Binding TicketPrice}"
DataFormatString
=
"{}{0:C2}"
>
</
telerik:GridViewDataColumn
>
<
telerik:GridViewDataColumn
Header
=
"Sellout Revenue"
DataMemberBinding
=
"{Binding Path=., Converter={StaticResource clubToSelloutRevenueConverter}}"
DataFormatString
=
"{}{0:C2}"
>
</
telerik:GridViewDataColumn
>
</
telerik:RadGridView.Columns
>
</
telerik:RadGridView
>