or
public
class
Reinforcement
{
private
string
fi;
private
bool
spacingMode;
private
int
amount;
private
double
spacing;
private
bool
combine =
false
;
private
double
area;
public
Reinforcement()
{
}
public
Reinforcement(
string
fi,
bool
spacingMode,
int
amount,
double
spacing,
bool
combine)
{
Fi = fi;
SpacingMode = spacingMode;
Amount = amount;
Spacing = spacing;
Combine = combine;
}
public
string
Fi
{
get
{
return
this
.fi;
}
set
{
this
.fi = value;
}
}
// (...)
}
public
class
ReinforcementViewModel
{
private
static
ObservableCollection<Reinforcement> reinforcementsByAmount;
private
static
ObservableCollection<Reinforcement> reinforcementsBySpacing;
public
static
ObservableCollection<Reinforcement> ReinforcementByAmount
{
get
{
if
(reinforcementsByAmount ==
null
)
{
reinforcementsByAmount =
new
ObservableCollection<Reinforcement>();
for
(
int
i = 1; i <= 10; i++)
{
reinforcementsByAmount.Add(
new
Reinforcement(
"10"
,
false
, i, 1,
false
));
reinforcementsByAmount.Add(
new
Reinforcement(
"12"
,
false
, i, 1,
false
));
(...)
}
}
return
reinforcementsByAmount;
}
}
<
telerik:RadTabControl
Name
=
"OperationsTabs"
SelectionChanged
=
"Tabs_SelectionChanged"
Visibility
=
"Collapsed"
>
<
telerik:RadTabItem
Header
=
" Search "
Name
=
"SearchTab"
>
<
cs:Searcher
Name
=
"SearchControl"
/>
</
telerik:RadTabItem
>
<
telerik:RadTabItem
Header
=
"Map Results"
Name
=
"MapResultsTab"
>
<
cs:MapResults
Name
=
"MapResults"
Reads
=
"{Binding ElementName=SearchControl, Path=Reads}"
/>
</
telerik:RadTabItem
>
</
telerik:RadTabControl
>
public
void
OnReadsChanged( ObservableCollection<ReadViewModel> newValue ) {
ReadsGrid.ItemsSource = newValue;
}
public
static
void
OnReadsChanged( DependencyObject d, DependencyPropertyChangedEventArgs e ) {
MapResults map = (MapResults) d;
map.OnReadsChanged( (ObservableCollection<ReadViewModel>) e.NewValue );
}
private
void
ReadsGrid_SelectionChanged(
object
sender, SelectionChangeEventArgs e ) {
if
( ProcessChange ) {
MapResultsControl.ProcessChange =
false
;
MapResultsControl.ReadsGrid.SelectedItem = ReadsGrid.SelectedItem
as
ReadViewModel;
MapResultsControl.ProcessChange =
true
;
}
e.Handled =
true
;
}
private
void
ReadsGrid_SelectionChanged(
object
sender, Telerik.Windows.Controls.SelectionChangeEventArgs e ) {
if
( ProcessChange ) {
SearchControl.ProcessChange =
false
;
SearchControl.ReadsGrid.SelectedItem = ReadsGrid.SelectedItem;
SearchControl.ProcessChange =
true
;
}
}
private void ArrangeLowestHeaders()
{
string lastGroupName = String.Empty;
CommonColumnHeader lastCommonHeader = null;
int span = 0;
List<
CommonColumnHeader
> headers = new List<
CommonColumnHeader
>();
for (int i = 0; i <
this.OrderedColumns.Count
; i++)
{
string
groupName
=
this
.OrderedColumns[i].ColumnGroupName;
if (lastGroupName != groupName)
{
lastGroupName
=
groupName
;
span
=
0
;
CommonColumnHeader
commonHeader
=
CreateCommonHeader
();
this.CommonHeadersGrid.Children.Add(commonHeader);
var
group
=
FindGroupByName
(groupName, this.ColumnGroups);
commonHeader.ColumnGroup
=
group
;
commonHeader.Content
=
CommonHeaderPresenter
.GetContent(group);//TODO this should happen in the header itself.
SetTemplateAndStyle(commonHeader, group);
commonHeader.SetValue(Grid.ColumnProperty, i);
commonHeader.SetValue(Grid.RowProperty, this.RowCount - 1);
commonHeader.HorizontalAlignment
= HorizontalAlignment.Stretch;
headers.Add(commonHeader);
lastCommonHeader
=
commonHeader
;
}
span++;
lastCommonHeader.SetValue(Grid.ColumnSpanProperty, span);
if (gridView.FrozenColumnCount > 0)
{
SelectiveScrollingGrid.SetSelectiveScrollingOrientation(lastCommonHeader, SelectiveScrollingOrientation.Vertical);
}
}
if (RowCount > 1)
{
ArrangeHeadersAtRow(this.RowCount - 2, headers);
}
}
<
StackPanel
Orientation
=
"Horizontal"
Grid.Row
=
"1"
Margin
=
"10"
HorizontalAlignment
=
"Center"
>
<
telerik:RadButton
x:Name
=
"btStartLog"
Content
=
"{Binding startStopbuttonText}"
IsEnabled
=
"{Binding isEnableTextBox}"
Command
=
"{Binding startStopLogConfigCommand}"
Margin
=
"10"
Width
=
"150"
Height
=
"40"
/>
</
StackPanel
>
<
telerik:RadGridView
x:Name
=
"RadGridView1"
>
<
telerik:GridViewDataColumn
Header
=
"To File"
>
<
telerik:GridViewDataColumn.CellTemplate
>
<
DataTemplate
>
<
CheckBox
HorizontalAlignment
=
"Left"
VerticalAlignment
=
"Center"
IsChecked
=
"{Binding IsOnFile}"
/>
</
DataTemplate
>
</
telerik:GridViewDataColumn.CellTemplate
>
<
telerik:GridViewColumn.CellStyle
>
<
Style
TargetType
=
"telerik:GridViewCell"
>
<
Setter
Property
=
"IsEnabled"
Value
=
"{Binding ElementName=btStartLog, Path=IsEnabled}"
/>
</
Style
>
</
telerik:GridViewColumn.CellStyle
>
</
telerik:GridViewDataColumn
>
</
telerik:RadGridView
>
public void UpdateTransaction(object sender, Telerik.Windows.Controls.GridViewRowEditEndedEventArgs e)
{
EditData ed = new EditData();
FundTransaction trans = (FundTransaction)e.NewData;
if (trans.FundID != null && trans.TickerID != null)
{
string result = ed.EditFundTransaction(trans.TransactionID, trans.FundID);
if (result != "")
{
if (MessageBox.Show(result, "Confirmation", MessageBoxButton.YesNo) == MessageBoxResult.Yes)
{
ImportData id = new ImportData();
id.AddTransaction(trans.FundID, trans.TickerID);
}
}
}
}