Announcement
Collapse
Looking for a User App or Add-On built by the NinjaTrader community?
Visit NinjaTrader EcoSystem and our free User App Share!
Have a question for the NinjaScript developer community? Open a new thread in our NinjaScript File Sharing Discussion Forum!
Have a question for the NinjaScript developer community? Open a new thread in our NinjaScript File Sharing Discussion Forum!
See more
See less
Partner 728x90
Collapse
NinjaTrader
QuantityUpDown move cursor inside textbox element
Collapse
X
-
QuantityUpDown move cursor inside textbox element
-
Hello sidlercom80,
The QuantityUpDown control is a custom control built for NinjaTrader, as such it does not have the same properties as a TextBox. This is a control which has multiple other WPF controls as children so you wouldn't be able to do the same tasks as a TextBox. You should be able to use the arrow keys, that works with control as shown in your video. For a custom implementation of this you would need to use the parent controls PreviewKey events to handle arrow keys to avoid other actions that may be already used by those keys. By doing that you would disable the normal functionality if this was being used in a chart. To fully handle that situation you would also need to check that the child TextBox has focus however I wouldn't be able to provide any help on how to find that textbox within the controls visual tree as it does not have an automation id.JesseNinjaTrader Customer Service
- Likes 1
-
For those interested in how to find a kind element (TextBox) in a QuantityUpDown control, without Automation ID:
Code:public static IEnumerable<T> GetAllVisualChildsFromParent<T>(this DependencyObject depObj) where T : DependencyObject {[INDENT]if (depObj == null)[/INDENT][INDENT]{[/INDENT][INDENT=2]yield return (T)Enumerable.Empty<T>();[/INDENT][INDENT]}[/INDENT][INDENT]for (int i = 0; i < VisualTreeHelper.GetChildrenCount(depObj); i++)[/INDENT][INDENT]{[/INDENT][INDENT=2]DependencyObject ithChild = VisualTreeHelper.GetChild(depObj, i);[/INDENT][INDENT=2]if (ithChild == null)[/INDENT][INDENT=2]{[/INDENT][INDENT=3]continue;[/INDENT][INDENT=2]}[/INDENT][INDENT=2]if (ithChild is T)[/INDENT][INDENT=2]{[/INDENT][INDENT=3]yield return (T)ithChild;[/INDENT][INDENT=2]}[/INDENT][INDENT=2]foreach (T childOfChild in GetAllVisualChildsFromParent<T>(ithChild))[/INDENT][INDENT=2]{[/INDENT][INDENT=3]yield return childOfChild;[/INDENT][INDENT=2]}[/INDENT][INDENT]}[/INDENT] }
Code:public static TextBox GetFirstChildTextBox(this Control control) {[INDENT]foreach (TextBox tb in control.GetAllVisualChildsFromParent<TextBox>())[/INDENT][INDENT]{[/INDENT][INDENT=2]return tb;[/INDENT][INDENT]}[/INDENT][INDENT]return null;[/INDENT] }
Code:var textBox = qtyUpDown.GetFirstChildTextBox();
Comment
Latest Posts
Collapse
Topics | Statistics | Last Post | ||
---|---|---|---|---|
Started by CortexZenUSA, Today, 12:53 AM
|
0 responses
1 view
0 likes
|
Last Post
by CortexZenUSA
Today, 12:53 AM
|
||
Started by CortexZenUSA, Today, 12:46 AM
|
0 responses
1 view
0 likes
|
Last Post
by CortexZenUSA
Today, 12:46 AM
|
||
Started by usazencortex, Today, 12:43 AM
|
0 responses
5 views
0 likes
|
Last Post
by usazencortex
Today, 12:43 AM
|
||
Started by sidlercom80, 10-28-2023, 08:49 AM
|
168 responses
2,265 views
0 likes
|
Last Post
by sidlercom80
Today, 12:05 AM
|
||
Started by Barry Milan, Yesterday, 10:35 PM
|
3 responses
11 views
0 likes
|
Last Post Yesterday, 11:58 PM |
Comment