System\Windows\Forms\Controls\TextBox\TextBoxBase.TextBoxBaseUiaTextProvider.cs (99)
32if (Owner is null || !Owner.IsHandleCreated)
45PInvokeCore.SendMessage(Owner, PInvokeCore.EM_GETSEL, ref start, ref end);
49using var selection = ComHelpers.GetComScope<ITextRangeProvider>(new UiaTextRange(Owner.AccessibilityObject, this, start, end));
63if (Owner is null || !Owner.IsHandleCreated)
73using var ranges = ComHelpers.GetComScope<ITextRangeProvider>(new UiaTextRange(Owner.AccessibilityObject, this, start, end));
100if (Owner is null || !Owner.IsHandleCreated)
110if (PInvokeCore.MapWindowPoints((HWND)default, Owner, ref clientLocation) == 0)
114Owner.AccessibilityObject,
124RECT clientRectangle = Owner.ClientRectangle;
132int start = Owner.GetCharIndexFromPosition(clientLocation);
136Owner.AccessibilityObject,
143public override Rectangle RectangleToScreen(Rectangle rect) => Owner is not null ? Owner.RectangleToScreen(rect) : Rectangle.Empty;
145public override ITextRangeProvider* DocumentRange => Owner is not null
148Owner.AccessibilityObject,
165if (Owner is null || !Owner.IsHandleCreated)
171VARIANT hasKeyboardFocus = Owner.AccessibilityObject.GetPropertyValue(UIA_PROPERTY_ID.UIA_HasKeyboardFocusPropertyId);
176Owner.AccessibilityObject,
178Owner.SelectionStart,
179Owner.SelectionStart));
183public override Point PointToScreen(Point pt) => Owner is not null ? Owner.PointToScreen(pt) : Point.Empty;
192*pRetVal = Owner is not null
195Owner.AccessibilityObject,
204=> Owner is not null && Owner.IsHandleCreated
209=> Owner is not null && Owner.IsHandleCreated
210? (int)PInvokeCore.SendMessage(Owner, PInvokeCore.EM_GETFIRSTVISIBLELINE)
213public override bool IsMultiline => Owner is not null && Owner.Multiline;
216=> Owner is not null && Owner.IsHandleCreated && WindowExStyle.HasFlag(WINDOW_EX_STYLE.WS_EX_RTLREADING);
218public override bool IsReadOnly => Owner is not null && Owner.ReadOnly;
224if (Owner is null || !Owner.IsHandleCreated)
229return ((int)GetWindowStyle(Owner) & PInvoke.ES_AUTOHSCROLL) != 0;
234=> Owner is not null && Owner.IsHandleCreated
235? (int)PInvokeCore.SendMessage(Owner, PInvokeCore.EM_GETLINECOUNT)
242if (Owner is null || !Owner.IsHandleCreated)
247Rectangle rect = Owner.ClientRectangle;
253if (!Owner.Multiline)
258int fontHeight = Owner.Font.Height;
264=> Owner is not null && Owner.IsHandleCreated
265? Owner.Font.ToLogicalFont()
269=> Owner is not null && Owner.IsHandleCreated
270? Owner.PasswordProtect
272: Owner.Text
276=> Owner is not null
277? new string(Owner is TextBox textBox
279: ((MaskedTextBox)Owner).PasswordChar, Owner.Text.Length)
285=> Owner is not null && Owner.IsHandleCreated
286? GetWindowExStyle(Owner)
290=> Owner is not null && Owner.IsHandleCreated
291? GetWindowStyle(Owner)
295=> Owner is not null && Owner.IsHandleCreated
296? Owner.GetLineFromCharIndex(charIndex)
300=> Owner is not null && Owner.IsHandleCreated
301? (int)PInvokeCore.SendMessage(Owner, PInvokeCore.EM_LINEINDEX, (WPARAM)line)
305=> Owner is not null && Owner.IsHandleCreated
306? Owner.GetPositionFromCharIndex(charIndex)
312if (Owner is null || !Owner.IsHandleCreated || startCharIndex < 0 || startCharIndex >= text.Length)
327return Owner.GetPositionFromCharIndex(useNext ? startCharIndex + 1 : startCharIndex);
330pt = Owner.GetPositionFromCharIndex(startCharIndex);
342pt = Owner.GetPositionFromCharIndex(startCharIndex);
358if (Owner is null || !Owner.IsHandleCreated || IsDegenerate(Owner.ClientRectangle))
386else if (Owner is not null)
388visibleStart = Owner.GetCharIndexFromPosition(ptStart);
390visibleEnd = Owner.GetCharIndexFromPosition(ptEnd) + 1;
401=> Owner is not null && Owner.IsHandleCreated
403Owner,
410if (Owner is null || !Owner.IsHandleCreated)
427PInvokeCore.SendMessage(Owner, PInvokeCore.EM_SETSEL, (WPARAM)start, (LPARAM)end);
432if (Owner is null)
437Debug.Assert(Owner.IsHandleCreated);
441PInvokeCore.SendMessage(Owner, PInvokeCore.EM_GETRECT, (WPARAM)0, ref rectangle);
447if (Owner is null)
453Debug.Assert(Owner.IsHandleCreated);
457using GetDcScope hdc = new(Owner.HWND);