feat: Add 5 remaining AJAX Control Toolkit extenders#479
Merged
csharpfritz merged 16 commits intoFritzAndFriends:devfrom Mar 19, 2026
Merged
feat: Add 5 remaining AJAX Control Toolkit extenders#479csharpfritz merged 16 commits intoFritzAndFriends:devfrom
csharpfritz merged 16 commits intoFritzAndFriends:devfrom
Conversation
Implements placeholder text for TextBox controls, matching the original Ajax Control Toolkit TextBoxWatermarkExtender behavior. - WatermarkText property for placeholder text - WatermarkCssClass for styling the watermark state - JS behavior handles focus/blur/input events Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Makes panels draggable by a handle element. Matches the original Ajax Control Toolkit DragPanelExtender behavior. - DragHandleID property to specify the drag handle element - Falls back to entire target if no handle specified - Handles edge cases (text selection, left-click only) Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Allows users to resize elements by dragging a handle. Matches the original Ajax Control Toolkit ResizableControlExtender behavior. - HandleCssClass for styling the resize handle - ResizableCssClass applied while actively resizing - Min/Max width and height constraints - Creates resize handle if not found Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
- DropShadowExtender: CSS box-shadow with opacity, width, rounded corners, position tracking - AlwaysVisibleControlExtender: Fixed positioning with 9 anchor points, offsets, animation support - New enums: HorizontalSide, VerticalSide for positioning Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
- RoundedCornersExtender: Selective border-radius with BoxCorners enum, optional background color - UpdatePanelAnimationExtender: MutationObserver-based update detection with CSS class and fade animations - New enum: BoxCorners (flags for corner selection) Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
- PasswordStrength: Real-time password quality indicator with text/bar modes, 5 strength levels - MaskedEditExtender: Input masking for phone/date/SSN with configurable mask patterns - New enums: DisplayPosition, StrengthIndicatorType, MaskType, InputDirection, AcceptNegative, DisplayMoney Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
- ValidatorCalloutExtender: Validation error callout bubbles with positioning, highlight CSS, icons - HoverMenuExtender: Hover-triggered popup menus with delays and positioning - New enum: PopupPosition (TopLeft, TopRight, BottomLeft, BottomRight) Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
- SlideShowExtender: Image carousel with auto-play, navigation controls, slide titles/descriptions - Client-side slide management via Slides parameter or data-slides attribute - Play/pause, next/previous controls with configurable interval Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
- ListSearchExtender: Type-to-filter for ListBox/DropDownList with Contains/StartsWith matching - BalloonPopupExtender: Styled tooltip balloons with pointer arrows, multiple trigger modes - New enums: PromptPosition, QueryPattern, BalloonStyle, BalloonSize, BalloonPosition Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Documentation (12 new files in docs/AjaxToolkit/): - TextBoxWatermark, DragPanel, ResizableControl, DropShadow - AlwaysVisibleControl, RoundedCorners, UpdatePanelAnimation - PasswordStrength, ValidatorCallout, SlideShow, ListSearch, BalloonPopup - Updated index.md with all new components bUnit Tests (6 new test files, 104 tests): - TextBoxWatermarkExtender, DropShadowExtender, PasswordStrength - ValidatorCalloutExtender, ListSearchExtender, BalloonPopupExtender Migration Toolkit: - Updated AJAX-TOOLKIT.md with migration patterns for all 12 extenders Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…PopDelay=100) Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Resolve 9 doc file conflicts: keep plain-text references for non-existent doc pages (MkDocs strict mode compliance). Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
- Log AJAX nav fix session (alphabetize items, collapsed state on desktop) - Document decision to defer AJAX Control Toolkit from health dashboard - Route Jubilee agent for sample nav updates - Merge inbox decision to decisions.md
- Sort GetByCategory() results alphabetically by name - Exclude AJAX category from desktop auto-expansion Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
The page-wide locator a:has-text('2') was matching collapsed nav
sidebar links after AJAX nav alphabetization. Scope to .main-content
to only match pager links within the component demo area.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Adds the remaining AJAX Control Toolkit (ACT) extender components to complete the ACT coverage in BlazorWebFormsComponents.
New Extenders
Also Included