Hi,
I have the following RadGridView where its ItemsSource which is bound to a collection that its item is inherited from DynamicObject.
As shown in the screenshot, how can i prevent the column name with "." being truncated in TryGetMember() method?
<
telerik:RadGridView
Grid.Row
=
"1"
Margin
=
"4"
GroupRenderMode
=
"Flat"
ShowGroupPanel
=
"False"
RowIndicatorVisibility
=
"Collapsed"
CanUserFreezeColumns
=
"False"
ItemsSource
=
"{Binding TestResultRecords, Mode=OneWay}"
AutoGenerateColumns
=
"True"
IsReadOnly
=
"True"
CanUserReorderColumns
=
"False"
CanUserInsertRows
=
"False"
CanUserDeleteRows
=
"False"
behavior:MyScrollIntoViewAsyncBehavior.IsEnabled
=
"{Binding IsScrollToView, Mode=OneWay}"
>
<
telerik:RadGridView.SortDescriptors
>
<
telerik:SortDescriptor
Member
=
"{x:Static res:UIStringTable.DutCnt}"
SortDirection
=
"Ascending"
/>
</
telerik:RadGridView.SortDescriptors
>
</
telerik:RadGridView
>
TestResultRecords = new ObservableCollection<
VolatileDynamicColRecord
>();
m_TestRecord = new VolatileDynamicColRecord();
m_TestRecord["Sweep Voltage1-@2.5mA(V)"] = 1234
m_TestRecord["Sweep Voltage1-@2.8mA(V)"] = 5678
m_TestRecord["Sweep Voltage1-Item3(V)"] = 2.74353
TestResultRecords.Add(m_TestRecord);
public class VolatileDynamicColRecord : DynamicObject, INotifyPropertyChanged
{
private readonly IDictionary<
string
, object> m_Data;
public VolatileDynamicColRecord()
{
m_Data = new Dictionary<
string
, object>();
}
public VolatileDynamicColRecord(IDictionary<
string
, object> source)
{
m_Data = source;
}
public override IEnumerable<
string
> GetDynamicMemberNames()
{
return m_Data.Keys;
}
public IEnumerable<
object
> GetDynamicMemberValues()
{
return m_Data.Values;
}
public override bool TryGetMember(GetMemberBinder binder, out object result)
{
// Note: when column name contains ".", the text after "." will be truncated.
result = this[binder.Name];
return result != null ? true : false;
}
public override bool TrySetMember(SetMemberBinder binder, object value)
{
if (this[binder.Name] == null)
{
return false;
}
this[binder.Name] = value;
return true;
}
public object this[string columnName]
{
get
{
if (m_Data.ContainsKey(columnName))
{
return m_Data[columnName];
}
return null;
}
set
{
if (!m_Data.ContainsKey(columnName))
{
m_Data.Add(columnName, value);
OnPropertyChanged(columnName);
}
else
{
if (m_Data[columnName] != value)
{
m_Data[columnName] = value;
OnPropertyChanged(columnName);
}
}
}
}
private void OnPropertyChanged(string propertyName)
{
if (PropertyChanged != null)
{
PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
}
}
#region INotifyPropertyChanged Members
public event PropertyChangedEventHandler PropertyChanged;
#endregion
Hi to all,
I don't understand wich property I have to set a not-editable combobox.
I've attached view in readonly-mode also. I hope it is clarifier.
I tryed with trigger and set IsReadOnly property, but ComboBox is still editable (I can't edit, but I can selected by dropdown)
01.
<
Style
x:Key
=
"FieldLongComboBoxStyle"
TargetType
=
"telerik:RadComboBox"
BasedOn
=
"{StaticResource RadComboBoxStyle}"
>
02.
<
Setter
Property
=
"Margin"
Value
=
"5"
/>
03.
<
Setter
Property
=
"IsEditable"
Value
=
"True"
/>
04.
<
Setter
Property
=
"ClearSelectionButtonVisibility"
Value
=
"Visible"
/>
05.
<
Setter
Property
=
"ClearSelectionButtonContent"
Value
=
"Cancella selezione"
/>
06.
<
Setter
Property
=
"TextSearchMode"
Value
=
"StartsWith"
/>
07.
<
Setter
Property
=
"EmptyText"
Value
=
"Valore non selezionato"
/>
08.
<
Setter
Property
=
"Width"
Value
=
"200"
/>
09.
<
Setter
Property
=
"HorizontalAlignment"
Value
=
"Left"
/>
10.
<
Style.Triggers
>
11.
<
DataTrigger
Binding
=
"{Binding CantUpdateModel}"
Value
=
"True"
>
12.
<
Setter
Property
=
"IsReadOnly"
Value
=
"True"
/>
13.
</
DataTrigger
>
14.
<
DataTrigger
Binding
=
"{Binding CantUpdateModel}"
Value
=
"False"
>
15.
<
Setter
Property
=
"IsReadOnly"
Value
=
"False"
/>
16.
</
DataTrigger
>
17.
</
Style.Triggers
>
18.
</
Style
>
Hi to all,
I created a RadWindow that contains WebBrowser control.
Simply, I execute Navigate method in Loaded event of RadWindow
It navigates to local url http://mylocalserver:8090/blablabla
When I open the window it appers empy, but if view HTML source is full, moreover, if I try to printer preview appers all content of webpage.
Are there problems between RadWindow control and WebBrowser?
PS: I tryed to exec InvalidateLayout method of RadWindow, but without resolve.
<
telerik:RadWindow
x:Class
=
"Brema.Client.Helpers.BlogViewer"
xmlns:telerik
=
"http://schemas.telerik.com/2008/xaml/presentation"
Header
=
"Aiuto in linea"
Height
=
"640"
Width
=
"480"
WindowStartupLocation
=
"CenterScreen"
Style
=
"{StaticResource RadWindowStyle}"
>
<
Grid
>
<
WebBrowser
x:Name
=
"MainWebBrowser"
/>
</
Grid
>
</
telerik:RadWindow
>
Hello,
I am refering to this documentation http://docs.telerik.com/devtools/wpf/api/html/P_Telerik_Windows_Controls_RadComboBox_TextInputString.htm
I want to get the InputString. I have updated the dll to version 2016.3.914 but still I could not find the property in XAML.
Could someone tell me what have I done wrong?
Hello,
when in edit mode with a row validation error it is still possible to perform Drag&Drop operations. They are not visible while performing the Drop, but the rows will be sorted just after clearing the row validation error.
Greeting
Raul
I have the following property in my ViewModel:
public double? MinimalValue
{
get { return this._minimalValue; }
set { this.SetProperty(ref this._minimalValue, value); }
}
In XAML I try to bind RadNumericUpDown.Value property to abovementioned property in the following way:
<
telerik:RadNumericUpDown
Grid.Row
=
"0"
Grid.Column
=
"1"
Height
=
"30"
Margin
=
"0 30 10 0"
IsEditable
=
"True"
Value
=
"{Binding MinimalValue, Mode=TwoWay}"
/>
But the following error occurs: 'Value' local property is applied only to the types that are derivative from 'RadRangeBase'. So can I bind RadNumericUpDown.Value property to the property in my ViewModel or not?
Hi,
I am using RadWindow.Alert and RadWindow.Confirm. I am getting a strange box around the text . I have attached the files.
Hi,
I am quite new to Telerik and I am trying to set up automated tests for our WPF application. Whenever I try to use 'bar.User.TypeText("SomeText", 200)' to a framework element (found using 'FrameworkElement bar= foo.MainWindow.Find.ByAutomationId("New_Proj_Text_Box");') it sends a couple of letters to the TextBox, but then it cuts stops sending text.
I think that this may be something to do with the window loading as the TextBox is in a Modal window and when you open the modal window mmanually (rather than using the link via Telerik) SendText sends all the text to to the TextBox.
I have tried to introduce an "ensureClickable", changed the times for the "keyPressTime" and changing the clickFirst argument (trying both True and False). Unfortunately none of these seem to work.
I have placed my test below. Unfortunately there are no helpful errors in the logs.
Any help on this would be hugely appreciated.
Many thanks in advance,
David
using ArtOfTest.WebAii.Controls.Xaml.Wpf;
using ArtOfTest.WebAii.Core;
using ArtOfTest.WebAii.Silverlight;
using ArtOfTest.WebAii.TestTemplates;
using ArtOfTest.WebAii.Wpf;
using Microsoft.VisualStudio.TestTools.UnitTesting;
namespace UnitTestProject2
{
/// <summary>
/// Summary description for TelerikNUnitTest1
/// </summary>
[TestClass]
public class TelerikNUnitTest1 : BaseWpfTest
{
private TestContext testContextInstance;
public WpfApplication foo { get; private set; }
/// <summary>
///Gets or sets the test context which provides
///information about and functionality for the current test run.
///</summary>
[TestMethod]
public void Open_Application()
{
Settings mySettings = new Settings();
mySettings.ClientReadyTimeout = 60000;
/// Use my Settings object to construct my Manager object
Manager myManager = new Manager(mySettings);
myManager.Start();
// Launch the application instance from its location in file system
WpfApplication fubar = myManager.LaunchNewApplication(@"C:\Users\e-ddcr\Documents\appLocation\Fubar.Startup.exe");
/// Validate the title of the homepage
ArtOfTest.Common.UnitTesting.Assert.IsTrue(fubar.MainWindow.Window.Caption.Equals("MainWindow"));
//TestContext.WriteLine("Validated window");
///Click the new project button
FrameworkElement newProjButton = fubar.MainWindow.Find.ByTextContent("New project...");
newProjButton.User.Click();
///Send keys to the project name textbox
FrameworkElement projNameTextBox = fubar.MainWindow.Find.ByAutomationId("New_Proj_Text_Box");
projNameTextBox.EnsureClickable();
projNameTextBox.User.Click();
projNameTextBox.User.TypeText("PokeMoon", 100);
}
}
}