or
<
telerikNavigation:RadTreeView
HorizontalContentAlignment
=
"Stretch"
x:Name
=
"uiActionersList"
IsDragDropEnabled
=
"True"
DragEnded
=
"uiActionersList_DragEnded"
HorizontalAlignment
=
"Stretch"
SelectionMode
=
"Multiple"
ScrollViewer.HorizontalScrollBarVisibility
=
"Hidden"
dragDrop:RadDragAndDropManager.AllowDrop
=
"True"
IsDragPreviewEnabled
=
"True"
IsDragTooltipEnabled
=
"True"
SelectionChanged
=
"uiActionersList_SelectionChanged"
ItemsSource
=
"{Binding ActionerModelViewCollection, NotifyOnSourceUpdated=True, NotifyOnTargetUpdated=True,Mode=TwoWay}"
Margin
=
"0,0,-5,0"
>
<
telerikNavigation:RadTreeView.ItemTemplate
>
<
DataTemplate
>
<
pmControls:ActionerControl
x:Name
=
"ItemsHost"
/>
</
DataTemplate
>
</
telerikNavigation:RadTreeView.ItemTemplate
>
</
telerikNavigation:RadTreeView
>
<
Grid
Background
=
"White"
>
<
StackPanel
>
<
Grid
>
<
StackPanel
Orientation
=
"Horizontal"
HorizontalAlignment
=
"Left"
Height
=
"25"
Margin
=
"0"
>
<
telerikControls:RadButton
Name
=
"dragHandle"
Height
=
"24"
Width
=
"11"
VerticalAlignment
=
"Center"
HorizontalAlignment
=
"Left"
Margin
=
"0,0,3,0"
>
<
telerikControls:RadButton.Content
>
<
Grid
>
<
Line
X1
=
"0"
Y1
=
"0"
X2
=
"3"
Y2
=
"0"
Stroke
=
"Black"
StrokeThickness
=
"1"
></
Line
>
<
Line
X1
=
"0"
Y1
=
"5"
X2
=
"3"
Y2
=
"5"
Stroke
=
"Black"
StrokeThickness
=
"1"
></
Line
>
<
Line
X1
=
"0"
Y1
=
"10"
X2
=
"3"
Y2
=
"10"
Stroke
=
"Black"
StrokeThickness
=
"1"
></
Line
>
</
Grid
>
</
telerikControls:RadButton.Content
>
</
telerikControls:RadButton
>
<
Image
Width
=
"25"
Height
=
"25"
Source
=
"{Binding SelectedActioner, Converter={StaticResource ReturnImageBasedOnTypeConverter}, Mode=OneWay, UpdateSourceTrigger=PropertyChanged, NotifyOnTargetUpdated=True}"
>
</
Image
>
<
DockPanel
Width
=
"300"
LastChildFill
=
"True"
Margin
=
"3,1,0,0"
>
<
StackPanel
DockPanel.Dock
=
"Right"
Orientation
=
"Horizontal"
Name
=
"uiCreationButtons"
Visibility
=
"{Binding HasGotThisJobOrGroup, Converter={StaticResource CollapsedOnTrueConverter}}"
>
<
telerikControls:RadButton
Content
=
"New Group"
Width
=
"70"
Margin
=
"0,0,3,0"
Padding
=
"0"
HorizontalAlignment
=
"Right"
Click
=
"ActionerGroupButton_Click"
/>
<
telerikControls:RadButton
Content
=
"New Job"
Width
=
"70"
Margin
=
"0"
Padding
=
"0"
HorizontalAlignment
=
"Right"
Click
=
"ActionerJobButton_Click"
/>
</
StackPanel
>
<
telerikControls:RadComboBox
Name
=
"uiActionerNamesComboBox"
IsEditable
=
"True"
IsReadOnly
=
"False"
Margin
=
"0,0,3,0"
ItemsSource
=
"{Binding AllAgilityJobDocs}"
SelectedValue
=
"{Binding SelectedActioner, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged, NotifyOnTargetUpdated=True}"
KeyUp
=
"uiActionerNamesComboBox_KeyUp"
telerikControls:TextSearch.TextPath
=
"Title"
HorizontalAlignment
=
"Stretch"
EmptyText
=
"{Binding ThisActioner.Position, Converter={StaticResource EmptyActionerTextConverter}}"
>
<
telerikControls:RadComboBox.FontWeight
>
<
MultiBinding
Converter
=
"{StaticResource ActionerBoldTextMultiBindingConverter}"
Mode
=
"OneWay"
>
<
Binding
Path
=
"SelectedActioner"
/>
<
Binding
Path
=
"NewAgilityJobDocs"
/>
</
MultiBinding
>
</
telerikControls:RadComboBox.FontWeight
>
<
telerikControls:RadComboBox.ItemTemplate
>
<
DataTemplate
>
<
StackPanel
Orientation
=
"Horizontal"
>
<
Image
Height
=
"16"
Width
=
"16"
>
<
Image.Style
>
<
Style
TargetType
=
"Image"
>
<
Style.Triggers
>
<
DataTrigger
Binding
=
"{Binding ItemType}"
Value
=
"Job"
>
<
Setter
Property
=
"Source"
Value
=
"{StaticResource JobDocImage}"
/>
</
DataTrigger
>
<
DataTrigger
Binding
=
"{Binding ItemType}"
Value
=
"Group"
>
<
Setter
Property
=
"Source"
Value
=
"{StaticResource GroupImage}"
/>
</
DataTrigger
>
</
Style.Triggers
>
</
Style
>
</
Image.Style
>
</
Image
>
<
TextBlock
Text
=
"{Binding Title}"
FontWeight
=
"Normal"
VerticalAlignment
=
"Center"
Margin
=
"5,0,0,0"
/>
</
StackPanel
>
</
DataTemplate
>
</
telerikControls:RadComboBox.ItemTemplate
>
</
telerikControls:RadComboBox
>
</
DockPanel
>
<
Canvas
Margin
=
"4,0,0,0"
Height
=
"23"
Width
=
"23"
Visibility
=
"{Binding ActionerCount, Converter={StaticResource HiddenIfActionerDoesntExistConverter}, ConverterParameter=11}"
>
<
Image
Source
=
"{StaticResource PMActionerRectangle}"
Height
=
"23"
Width
=
"23"
Panel.ZIndex
=
"100"
/>
<
Rectangle
Height
=
"21"
Width
=
"21"
Margin
=
"1,1,0,0"
RadiusX
=
"3"
RadiusY
=
"3"
Panel.ZIndex
=
"99"
>
<
Rectangle.Fill
>
<
SolidColorBrush
Color
=
"{Binding SelectedColor, UpdateSourceTrigger=PropertyChanged, Converter={StaticResource ColourConverter}}"
/>
</
Rectangle.Fill
>
</
Rectangle
>
</
Canvas
>
</
StackPanel
>
</
Grid
>
</
StackPanel
>
</
Grid
>
<
framework:RTPOGridView
Grid.Row
=
"1"
x:Name
=
"orderList"
Margin
=
"7,0,7,0"
VerticalAlignment
=
"Stretch"
ItemsSource
=
"{Binding dailyload}"
>
<
telerik:RadContextMenu.ContextMenu
>
<
telerik:RadContextMenu
x:Name
=
"ViewErrorsContextMenu"
IsEnabled
=
"True"
>
<
telerik:RadContextMenu.Items
>
<
telerik:RadMenuItem
Header
=
"View Errors"
x:Name
=
"itemViewErrors"
IsEnabled
=
"True"
Command
=
"{Binding Path=ViewErrorsCommand}"
>
</
telerik:RadMenuItem
>
</
telerik:RadContextMenu.Items
>
</
telerik:RadContextMenu
>
</
telerik:RadContextMenu.ContextMenu
>
<
framework:RTPOGridView.Columns
>
<
telerik:GridViewDataColumn
Header
=
"Customer"
DataMemberBinding
=
"{Binding CustomerPerson}"
Width
=
"*"
/>
<
telerik:GridViewDataColumn
Header
=
"Product"
DataMemberBinding
=
"{Binding Product}"
Width
=
"*"
/>
</
framework:RTPOGridView
>
and the code which i wrote for it in View Model is as follows.
public void OnViewErrorsCommand(object sender, RoutedEventArgs e)
{
_dialogController.ShowDialog(_moduleController, ApplicationConstants.OrdersViewNames.ViewErrors);
}
[ValueConversion(
typeof
(Boolean),
typeof
(String))]
class
IsWhiteAreaConverter : IValueConverter
{
public
object
Convert(
object
value, Type targetType,
object
parameter, System.Globalization.CultureInfo culture)
{
return
(
bool
)value ?
"Yes"
:
"No"
;
}
public
object
ConvertBack(
object
value, Type targetType,
object
parameter, System.Globalization.CultureInfo culture)
{
if
((
string
)value ==
"Yes"
)
{
return
true
;
}
else
{
return
false
;
}
}
}
<
Grid.Resources
>
<
my:IsWhiteAreaConverter
x:Key
=
"isWhiteAreaConverter"
/>
</
Grid.Resources
>
<telerik:RadGridView Grid.Column="0" Grid.Row="0" Grid.ColumnSpan="2" Name="rgvPlan" ItemsSource="{Binding}" AutoGenerateColumns="False">
<
telerik:GridViewDataColumn
Header
=
"HalfLevel"
DataMemberBinding
=
"{Binding HalfLevelName}"
/>
<
telerik:GridViewDataColumn
Header
=
"Is White Area"
DataMemberBinding
=
"{Binding IsWhiteArea, Converter={StaticResource isWhiteAreaConverter}}"
>
<
telerik:GridViewDataColumn.CellTemplate
>
<
DataTemplate
>
<
TextBlock
Text
=
"{Binding IsWhiteArea, Converter={StaticResource isWhiteAreaConverter}, Mode=Default}"
Foreground
=
"AliceBlue"
/>
</
DataTemplate
>
</
telerik:GridViewDataColumn.CellTemplate
>
<
telerik:GridViewDataColumn.CellEditTemplate
>
<
DataTemplate
>
<
TextBox
Text
=
"{Binding IsWhiteArea, Converter={StaticResource isWhiteAreaConverter}}"
/>
</
DataTemplate
>
</
telerik:GridViewDataColumn.CellEditTemplate
>
</
telerik:GridViewDataColumn
>
public
class
SelectedClientViewModel : PropertyChangedImplementation
{
public
SelectedClientViewModel(IClientService clientService, IEventAggregator eventAggregator)
{
this
._clientService = clientService;
SelectedClientChangedEvent evt = eventAggregator.GetEvent<SelectedClientChangedEvent>();
evt.Subscribe(OnSelectedClientChangedEvent);
}
public
void
OnSelectedClientChangedEvent(Client newClient)
{
_currentClient = newClient;
FirePropertyChanged(
"name"
);
FirePropertyChanged(
"address"
);
FirePropertyChanged(
"city"
);
FirePropertyChanged(
"country"
);
FirePropertyChanged(
"telephone"
);
FirePropertyChanged(
"province"
);
}
...
public
class
PropertyChangedImplementation : INotifyPropertyChanged
{
public
event
PropertyChangedEventHandler PropertyChanged;
protected
void
FirePropertyChanged(
string
property)
{
if
(PropertyChanged !=
null
)
{
PropertyChanged(
this
,
new
PropertyChangedEventArgs(property));
}
}
}
Thanks,
Randy
If you need additional info please let me know.
tvDirectoryDragStarted(
object
sender, RadTreeViewDragEndedEventArgs e)
{
for
(
int
i = 0;i<e.DraggedItems.Count;i++)
{
RadTreeViewItem item = (RadTreeViewItem)e.DraggedItems[i];
_fileQueue.Items.Add(item.Header.ToString());
}
}