Hi,
Trying to see what can I change to improve performance for RadDiagram.
1- The goal is to show 2000+ hexagon.
2- Every hexagon has the same size, but it's color content might change. Every hexagon has a binding to a Viewmodel item.
3- Hexagons are grouped inside containers. The containers are pretty much transparent, except for its header.
4- There are no connectors and for now at least, users can't drag/delete/add items.
5- The diagram is contained inside a RadDocking and the docking is inside a regular WPF Tab.
When testing with 300 items there is a 4 second wait after the UI is loaded until the UI can be interacted with.
I am wondering, giving my scenario, what can I do to improve performance, giving that after loading the nodes don't change position/size.
hello i have large List of Points with WKT Geometry.How can i load fast,display and selected items?
I tried AsyncSqlGeospatialDataReader, but it is very slow.I cant move map until loads all points....
I display point by itemtemplate <ellipse ...
How can i load faster, and can selectionItems?
Hi!
I have a diagram defined inside a docking window that can be hidden.
The NavigationPane works fine updating when there are changes to my diagram. However when I hide the Docking panel that contains the diagram (hiding the diagram), the navigation pane doesn't get updated anymore.
Is there a way to workaround that?
Thanks!
Hi,
I've assigned a command to a RadHyperlinkButton. The CanExecute handler is being invoked as expected, but clicking on the RadHyperlinkButton does not invoke the Executed handler. Is this by design? And if so, is it possible to force the execution upon click?
Best regards
Michael
Is there any possibility of aligning the zeros of the axes, in a graph that contains more than one axis?
In the iamgen you can observe a graph with two axes where the zero of the axes is at different heights. The idea would be to adjust them to the same height. Thank you.
When using AutoCompleteBox with IME, the AutoCompleteBox may "steal" characters from the IME input.
For example, if there is an auto complete entry named "Hello", and we type "HA" in the AutoCompleteBox with an IME, the initial character "H" will be stolen by the AutoCompleteBox, leaving only "A".
Hello, I dont know why, on most controls i cannot create a copy and a new template or style for yours controls to make generic bindable resource template/style
neither using visual studio nor blend for vs. Can you provide all templates and styles for your controls?
I want DataForm to have a default alignment. However, the default alignment does not appear as sample as shown below. It is not known that the item can also be set from the attribute. I want to know how to change the settings.
attached file : MyUI.jpg / SampleUI.jpg
XAML
<
StackPanel
>
<
telerik:RadGridView
x:Name
=
"gvGridView"
ItemsSource
=
"{Binding EtcRegistrationViewModel}"
CanUserGroupColumns
=
"False"
ShowGroupPanel
=
"False"
GroupRenderMode
=
"Flat"
RowIndicatorVisibility
=
"Collapsed"
/>
<
telerik:RadDataPager
Source
=
"{Binding Items, ElementName=gvGridView}"
DisplayMode
=
"FirstLastPreviousNextNumeric"
PageSize
=
"22"
/>
</
StackPanel
>
<
Grid
Margin
=
"16,0,0,0"
Grid.Column
=
"1"
>
<
telerik:RadDataForm
x:Name
=
"myRadDataForm"
ItemsSource
=
"{Binding EtcRegistrationViewModel}"
Width
=
"400"
/>
</
Grid
>
ViewModel
public
class
EtcServiceRegistrationViewModel
{
private
ICollectionView etcRegistrationViewModel =
null
;
public
ICollectionView EtcRegistrationViewModel
{
get
{
if
(
this
.etcRegistrationViewModel ==
null
)
{
ObservableCollection<EtcServiceRegistrationModel> etcRegistrationModel =
new
ObservableCollection<EtcServiceRegistrationModel>();
etcRegistrationModel.Add(
new
EtcServiceRegistrationModel(
"123-12-12354"
,
new
DateTime(0001, 01, 01),
new
DateTime(0001, 01, 01),
false
,
new
DateTime(2018, 12, 15),
new
DateTime(9999, 12, 31),
true
));
etcRegistrationModel.Add(
new
EtcServiceRegistrationModel(
"123-12-12123"
,
new
DateTime(2018, 12, 15),
new
DateTime(9999, 12, 31),
true
,
new
DateTime(0001, 01, 01),
new
DateTime(0001, 01, 01),
false
));
this
.etcRegistrationViewModel =
new
QueryableCollectionView(etcRegistrationModel);
}
return
this
.etcRegistrationViewModel;
}
}
}
Model
public
class
EtcServiceRegistrationModel : ObservableObject, IEditableObject
{
EtcServiceRegistrationData backupEtcServiceRegistrationData;
private
string
consumerNumber;
private
DateTime silverCareStartingDate;
private
DateTime silverCareEndingDate;
private
bool
silverCareActive;
private
DateTime homeLeakageStartingDate;
private
DateTime homeLeakageEndingDate;
private
bool
homeLeakageActive;
public
EtcServiceRegistrationModel()
{
}
public
EtcServiceRegistrationModel(
string
_consumerNumber, DateTime _silverCareStartingDate, DateTime _silverCareEndingDate,
bool
_silverCareActive, DateTime _homeLeakageStartingDate, DateTime _homeLeakageEndingDate,
bool
_homeLeakageActive)
{
this
.backupEtcServiceRegistrationData =
new
EtcServiceRegistrationData();
this
.backupEtcServiceRegistrationData.consumerNumber = _consumerNumber;
this
.consumerNumber = _consumerNumber;
this
.backupEtcServiceRegistrationData.silverCareStartingDate = _silverCareStartingDate;
this
.silverCareStartingDate = _silverCareStartingDate;
this
.backupEtcServiceRegistrationData.silverCareEndingDate = _silverCareEndingDate;
this
.silverCareEndingDate = _silverCareEndingDate;
this
.backupEtcServiceRegistrationData.silverCareActive = _silverCareActive;
this
.silverCareActive = _silverCareActive;
this
.backupEtcServiceRegistrationData.homeLeakageStartingDate = _homeLeakageStartingDate;
this
.homeLeakageStartingDate = _homeLeakageStartingDate;
this
.backupEtcServiceRegistrationData.homeLeakageEndingDate = _homeLeakageEndingDate;
this
.homeLeakageEndingDate = _homeLeakageEndingDate;
this
.backupEtcServiceRegistrationData.homeLeakageActive = _homeLeakageActive;
this
.homeLeakageActive = _homeLeakageActive;
}
public
struct
EtcServiceRegistrationData
{
internal
string
consumerNumber;
internal
DateTime silverCareStartingDate;
internal
DateTime silverCareEndingDate;
internal
bool
silverCareActive;
internal
DateTime homeLeakageStartingDate;
internal
DateTime homeLeakageEndingDate;
internal
bool
homeLeakageActive;
}
public
string
ConsumerNumber
{
get
{
return
consumerNumber;
}
set
{
consumerNumber = value;
RaisePropertyChanged(() =>
this
.ConsumerNumber);
}
}
public
DateTime SilverCareStartingDate
{
get
{
return
silverCareStartingDate;
}
set
{
silverCareStartingDate = value;
RaisePropertyChanged(() =>
this
.SilverCareStartingDate);
}
}
public
DateTime SilverCareEndingDate
{
get
{
return
silverCareEndingDate;
}
set
{
silverCareEndingDate = value;
RaisePropertyChanged(() =>
this
.SilverCareEndingDate);
}
}
public
bool
SilverCareActive
{
get
{
return
silverCareActive;
}
set
{
silverCareActive = value;
RaisePropertyChanged(() =>
this
.SilverCareActive);
}
}
public
DateTime HomeLeakageStartingDate
{
get
{
return
homeLeakageStartingDate;
}
set
{
homeLeakageStartingDate = value;
RaisePropertyChanged(() =>
this
.HomeLeakageStartingDate);
}
}
public
DateTime HomeLeakageEndingDate
{
get
{
return
homeLeakageEndingDate;
}
set
{
homeLeakageEndingDate = value;
RaisePropertyChanged(() =>
this
.HomeLeakageEndingDate);
}
}
public
bool
HomeLeakageActive
{
get
{
return
homeLeakageActive;
}
set
{
homeLeakageActive = value;
RaisePropertyChanged(() =>
this
.HomeLeakageActive);
}
}
public
void
BeginEdit()
{
}
public
void
CancelEdit()
{
ConsumerNumber =
this
.backupEtcServiceRegistrationData.consumerNumber;
}
public
void
EndEdit()
{
this
.backupEtcServiceRegistrationData.consumerNumber = ConsumerNumber;
}
}