Quantcast
Channel: AjaxControlToolkit Work Item Rss Feed
Viewing all 4356 articles
Browse latest View live

Closed Issue: MaskedEdit tab activation in Firefox causes problems [10767]

$
0
0
Scenario:
Load sample page in Firefox
Tab to Number text box
Type "123", [Tab]
Result: 2,300,000.00 (missing '1', value is 5 orders of magnitude off)
Comments: Workaround found, see comments.

Closed Issue: MaskedEditExtender JavaScript Error When Used in GridView FooterTemplate [11569]

$
0
0
When leaving a textbox after selecting a date from the calendar control a JavaScript error is taken 'Undefined is null or not an object'

Ycur is null of not an object in AjaxControlToolkit.MaskedEditBehavior , AutoFormatNumber : function()

Line 1539 : Ycur = Ycur.substring(2);}


---.aspx page with gridview control --

<FooterTemplate>
<asp:TextBox id="tbDateToAccessF" tooltip="Date to begin access " runat="server" SkinID="FormTextBox" MaxLength="10" Width="80px" Text='<%# DataBinder.Eval(Container, "DataItem.DATE_TO_ACCESS") %>' AutoPostBack="false"></asp:TextBox>

<asp:RequiredFieldValidator id="rfvtbDateToAccessF" runat="server" ControlToValidate="tbDateToAccessF" ErrorMessage="Please enter a date to access" Display="None"></asp:RequiredFieldValidator>

<ajaxToolkit:ValidatorCalloutExtender runat="Server" ID="rfvtbDateToAccessFE" TargetControlID="rfvtbDateToAccessF" HighlightCssClass="validatorCalloutHighlight" />

<asp:ImageButton runat="Server" id="imgDateToAccessF" ImageUrl="images/Calendar_scheduleHS.png" CausesValidation="false" AlternateText="Click to show calendar" /><br />

<ajaxToolkit:CalendarExtender id="ccDateToAccessF" runat="server" PopupButtonID="imgDateToAccessF" CssClass="MyCalendar" Format="MM/dd/yy"
TargetControlID="tbDateToAccessF" />
<ajaxToolkit:MaskedEditExtender id="meDateToAccessF" runat="server"
TargetControlID="tbDateToAccessF"
Mask="99/99/99"
MessageValidatorTip="true"
OnFocusCssClass="MaskedEditFocus"
OnInvalidCssClass="MaskedEditError"
MaskType="Date"/>
</FooterTemplate>

---End .aspx page with gridview control --
Comments: This ticket was filed for a pre-15.1 version of AJAX Control Toolkit. If this is still an issue in v15.1 or later, please create a new inquiry.

Closed Issue: MaskedEditExtender sends commas when MaskType="Number" [11794]

$
0
0
My datagrid is binding a double field to a textbox (via ObjectDataSource). I'd like to use the MaskedEditExtender to format the display and entry of these numbers. But when I try to save the record after entering data I get "12,544.00 is not a valid value for Double." When I remove the MaskedEditExtender from the textbox, it works fine, though, of course, without the formatting.

Apparently MaskedEditExtender is sending commas, to the underlying datasource even when MaskType="Number"
Comments: This ticket was filed for a pre-15.1 version of AJAX Control Toolkit. If this is still an issue in v15.1 or later, please create a new inquiry.

Closed Issue: Makedit : Databinding numeric [11828]

$
0
0
I have created a itemplate for edit numeric data on a gridview. Everything is ok except databinding. The template has one textbox, one AjaxControlToolkit.MaskedEditExtender and one AjaxControlToolkit.MaskedEditValidator. The mask for the extender is "999,999,999.99", when the databinding is executed if the value to bind as more or less decimal numbers it show worng on de grid.
Examples:
value to bind = 1.5
on the grid = 0.15
expected = 1.50

value to bind = 2
on the grid = 0.2
expected = 2.00

value to bind = 158487.5878
on the grid = 15,848,758.78
expected = 158,487.59

Example source code:

public struct BetterSoftColumnConfigStruct
{
public string FieldName;
public string HeaderText;
public int ColumnSize;
public string DataFormatString;
public string DataType;
public bool Visible;
public bool ReadOnly;
}

private class MyTemplate : ITemplate
{
protected TextBox txbNumeric;
protected AjaxControlToolkit.MaskedEditExtender meeNumeric;
protected AjaxControlToolkit.MaskedEditValidator mevNumeric;

private BetterSoftColumnConfigStruct bsccCfg;

public MyTemplate(BetterSoftColumnConfigStruct pCfg)
{
bsccCfg = pCfg;
}

public void InstantiateIn(System.Web.UI.Control ctrlContainer)
{
txbNumeric = new TextBox();
txbNumeric.ID = bsccCfg.FieldName;
txbNumeric.DataBinding += new EventHandler(txbNumeric_DataBinding);

meeNumeric = new AjaxControlToolkit.MaskedEditExtender();
meeNumeric.ID = txbNumeric.ID + "meeNumeric";
meeNumeric.TargetControlID = bsccCfg.FieldName;
meeNumeric.MessageValidatorTip = true;
meeNumeric.OnFocusCssClass = "MaskedEditFocus";
meeNumeric.OnInvalidCssClass = "MaskedEditError";
meeNumeric.MaskType = AjaxControlToolkit.MaskedEditType.Number;
meeNumeric.Mask = "999,999,999.99";
meeNumeric.ClearMaskOnLostFocus = true;
meeNumeric.InputDirection = AjaxControlToolkit.MaskedEditInputDirection.RightToLeft;
meeNumeric.DisplayMoney = AjaxControlToolkit.MaskedEditShowSymbol.None;
meeNumeric.AcceptNegative = AjaxControlToolkit.MaskedEditShowSymbol.Left;
meeNumeric.CultureName = System.Globalization.CultureInfo.CurrentCulture.Name;
meeNumeric.ErrorTooltipEnabled = true;

mevNumeric = new AjaxControlToolkit.MaskedEditValidator();
mevNumeric.ID = txbNumeric.ID + "mevNumeric";
mevNumeric.ControlExtender = meeNumeric.ID;
mevNumeric.ControlToValidate = txbNumeric.ID;
mevNumeric.EmptyValueMessage = "*";
mevNumeric.InvalidValueMessage = "*";
mevNumeric.Display = ValidatorDisplay.Dynamic;
mevNumeric.ToolTip = "*";
mevNumeric.EmptyValueBlurredText = "*";
mevNumeric.InvalidValueBlurredMessage = "*";

ctrlContainer.Controls.Add(txbNumeric);
ctrlContainer.Controls.Add(meeNumeric);
ctrlContainer.Controls.Add(mevNumeric);
}

void txbNumeric_DataBinding(object sender, EventArgs e)
{
TextBox txbBox = (TextBox)sender;
GridDataItem gdiContainer = (GridDataItem)txbBox.NamingContainer;
double i = Convert.ToDouble(((DataRowView)gdiContainer.DataItem)[bsccCfg.FieldName]);
txbBox.Text = i.ToString();
}

}
Comments: Workaround found, see comments.

Closed Issue: Validators that are included as part of an async postback do not initialize in Safari due to an ASP.NET AJAX 1.0 issue [10784]

$
0
0
[56907,57595]
The relevant part of the data that comes back from the async postback looks like this:
|ScriptContentWithTags|{"text":"\r\n\u003c!--\r\nvar Page_ValidationActive
 = false;\r\nif (typeof(ValidatorOnLoad) == \"function\") {\r\n    ValidatorOnLoad();\r\n}\r\n\r\nfunction
 ValidatorOnSubmit() {\r\n    if (Page_ValidationActive) {\r\n        return ValidatorCommonOnSubmit
();\r\n    }\r\n    else {\r\n        return true;\r\n    }\r\n}\r\n// --\u003e\r\n","type":"text/javascript"
}|
ValidatorOnLoad is used to change the string function name stored in validator.evaluationfunction into a function object. On Safari, the code above is never run, so (for example) ValidatorCallout's attempts to wrap that in a delegate for this._originalValidationMethod fail.
Because this is an ASP.NET AJAX issue, the best we could do would be to detect the string-ness of .evaluationfunction and fix it up ourselves like ValidatorOnLoad does.
A side effect of this is that ValidatorCallout's .dispose null-derefs because of the inconsistent state. I found that the following code seems to take care of that:
<        $removeHandler(this._closeImage, "click", this._closeClickHandler);
---
>        this._focusHandler = null;
>        if (this._closeClickHandler) {
>            if (this._closeImage) {
>                $removeHandler(this._closeImage, "click", this._closeClickHandler);
>            }
>            this._closeClickHandler = null;
>        }
Comments: This ticket was filed for a pre-15.1 version of AJAX Control Toolkit. If this is still an issue in v15.1 or later, please create a new inquiry.

Closed Issue: ValidatorCallout positioning setting - choose where the flyout should appear relative to the textbox [13053]

$
0
0
[workitem:5648]

Fix isn't nice:
There is no option to choose where to display callout: on left or right.
W/o this callout for rightmost textboxies is displayed out of window bounds!
(image attached)
Comments: This ticket was filed for a pre-15.1 version of AJAX Control Toolkit. If this is still an issue in v15.1 or later, please create a new inquiry.

Closed Issue: Element grows if width and height not specified for Animation Extender/ReSize [9962]

$
0
0
If only width or height is specified for a Resize within an Animation Extender (with units of pixels), the other value grows by two during the animation. For example, if width is set, the height will grow by two pixels, and vice versa. This was seen in both IE7 and FF2.
Comments: Workaround found, see comments.

Closed Issue: CascadingDropDown.SelectedValue returns garbage from client [5821]

$
0
0
This was initially discussed here: http://forums.asp.net/thread/1456190.aspx.

To reiterate, the SelectedValue and SelectedItem.Text is passed to the server through the ClientState member as a string of the form "{0}:::{1}" where {0} is the value and {1} is the list text. The server-side code makes no effort to split this into its constituent parts before presenting it through the server-side SelectedValue member. Thus, if a Bind() call deposits "18" into the SelectedValue, the binding logic is sure to choke on the "18:::Descriptive Text Of Some Sort" that comes back.

The article referenced above contains a proposed patch to correct the behaivor.
Comments: This ticket was filed for a pre-15.1 version of AJAX Control Toolkit. If this is still an issue in v15.1 or later, please create a new inquiry.

Closed Issue: Possible Thread Safety bug in ScriptObjectBuilder [9956]

$
0
0
I have been reviewing the AjaxControlToolkit build 10301 for possible inclusion in our product.

As a result I may have spotted a minor thread safety bug in ScriptObjectBuilder.

It concerns access to the generic Dictionary based static data members _cache and _cssCache.

In the methods
private static List<ResourceEntry> GetScriptReferencesInternal(Type type, Stack<Type> typeReferenceStack)
and
private static IEnumerable<string> GetCssReferences(Control control, Type type, Stack<Type> typeReferenceStack)

the following type of code is used to access the static data members.

// Look for a cached set of references outside of the lock for perf.
//
List<ResourceEntry> entries;

if (_cache.TryGetValue(type, out entries))
{
return entries;
}

The code is performed outside the lock (_sync) statements and consequently is not thread safe because the generic dictionary is not thread safe (see the .Net 2.0 docs + code review with reflector).

You could change the implementation to use the old fashioned typeless System.Collections.Hashtable.
Microsoft re-engineered Hashtable in .Net 2.0 to be thread safe to multiple readers, single writer so your code access pattern would be OK.
The change to Hashtable was made to make ResourceManager more performant in .Net 2.0 which depends on Hashtable for its implementation.

Unfortunately Dictionary<K,V> did not get the Hashtable treatment and consequently it's implementation is not thread safe.

In our own implementations we have a set of singleton cache generics that use Hashtable as the internal implementation so that we get the no lock performance improvement for readers.
I know you lose the value symantics of the generic dictionary, but as long as your key and value are reference types there isn't really a problem (otherwise you get excessive boxing).

Hope this is helpful.
Comments: This ticket was filed for a pre-15.1 version of AJAX Control Toolkit. If this is still an issue in v15.1 or later, please create a new inquiry.

Closed Issue: ReorderList with FireFox troubles [14002]

$
0
0
I am having a heck of a time getting the ReorderList to work correctly with FireFox. It does work in IE7. I can drag items around, but I can only reposition when I drag all the way to the top. As soon ask I click on the handle, the item disappears from the list, and I can't insert my item anywhere in the list except at the top. The demo project works just fine in FireFox and I believe I have my project set up the same way. I have the ReorderTemplate, DragHandleTemplate, and ItemTemplate setup with appropriate classes.
What else could I be missing?
Comments: This ticket was filed for a pre-15.1 version of AJAX Control Toolkit. If this is still an issue in v15.1 or later, please create a new inquiry.

Closed Issue: Bug in ModalPopupBehavior.js [21974]

$
0
0
Right now, restoring visibility of dropdown controls does not work in IE6.

In function restoreTab, please change

this._saveDesableSelect[k].tag.style.visibility = this._saveDesableSelect[k].visib;

to

this._saveDesableSelect[k].style.visibility = this._saveDesableSelect[k].visib;
Comments: Workaround found, see comments.

Closed Issue: Modal Popup Versions [25587]

$
0
0
When I using 3.0.20820.0 the modal popup is working fine. In the same project I removed 3.0.20820.0 and added 3.0.30930.0.

After the change the modal popup was then displaying on the page AND in popup. Resulting in an error, there was 2 identical controls created on the same page


<asp:ImageButton ID="ImgbtnNew" runat="server" ImageUrl="../images/new_icon.png" onclick="ImgbtnNew_Click" /> //call modal popup from codebehind

<cc1:ModalPopupExtender ID="LinkButton1_ModalPopupExtender" runat="server"
DynamicServicePath="" Enabled="True" TargetControlID="lbdummy" OkControlID="btnSave" OnOkScript=""
BackgroundCssClass="modalBackground" DropShadow="true" PopupControlID="PanelPOP" CancelControlID="ButtonCancel" PopupDragHandleControlID="PanelPOP">
</cc1:ModalPopupExtender>
<asp:LinkButton ID="lbdummy" runat="server" Style="display: none"></asp:LinkButton>

<asp:Panel ID="PanelPOP" runat="server" CssClass="PopPanel" DefaultButton="btnSave">
<table width="700">
<tr><td class="button"><asp:Label ID="lblText" CssClass="lblText" runat="server" Text="Add Award"></asp:Label></td><td class="button" align="right"><asp:ImageButton ID="ButtonCancel" runat="server" ImageUrl="../images/x.gif" /><asp:Label ID="lblPKEY" runat="server" Style="display: none"></asp:Label></td></tr>
<tr><td style="width: 240px" >File</td><td><asp:FileUpload ID="FileUploadMods" runat="server" Height="22px" Width="500px" /></td></tr>
<tr><td style="width: 240px" >Description</td><td style="width: 539px"><asp:TextBox ID="txtdescription" TextMode="MultiLine" Height="50px" Width="500" runat="server"></asp:TextBox></td></tr>
<tr><td style="width: 240px" >Notes</td><td style="width: 539px"><asp:TextBox ID="txtNotes" TextMode="MultiLine" Height="50px" Width="500" runat="server"></asp:TextBox></td></tr>
<tr><td style="width: 240px" >Misc Date</td><td style="width: 539px">
<asp:TextBox ID="txtmiscdate" runat="server" ></asp:TextBox></td></tr>
<cc1:CalendarExtender ID="txtmiscdate_CalendarExtender" runat="server" TargetControlID="txtmiscdate">
</cc1:CalendarExtender>
<tr><td valign="top">Reason</td><td><asp:DropDownList ID="ddlReason" runat="server" DataSourceID="SqlDataSourceReasons" DataTextField="ModificationReason" DataValueField="PKEY"></asp:DropDownList></td></tr>
<tr><td style="width: 240px" class="button"></td><td style="width: 539px" class="button"><asp:Button ID="btnSave" runat="server" Text="Save" UseSubmitBehavior="false" onclick="ButtonUpdate_Click" /></td></tr>
</table>
</asp:Panel>
Comments: This ticket was filed for a pre-15.1 version of AJAX Control Toolkit. If this is still an issue in v15.1 or later, please create a new inquiry.

Closed Issue: MaskedEditExtender not working with ModalPopUpExtender [22817]

$
0
0
Hi,

I am using a maskededitextender to specify the mask of a date. Culturename is set to "es-ES" and I have also written value for userdateformat and culturedateformat for it to display in the "dd/mm/yyyy" way. I have other maskededitextenders in the ASP .NET 2.0 I'm working on, and those attributes are enough for them to work properly, but there is a usercontrol with an embeddedusercontrol that displays inside a modalpopupextender which doesnt apply format well (it shows date with mm/dd/yyyy format). Is there anything special in this case I should have into account?

Thanks in advance
Comments: Workarounf found, see comments.

Closed Issue: calendarextender not showing on modal popup [25766]

$
0
0
I have an ajax tab control with a modal popup and inside modalpopup i have a calenderextender. this is not shown. the calender is showing behind the modal popup.
Can anyone guide. For reference i have added the page. the tool kit i am using is september 2009 release.
Comments: This ticket was filed for a pre-15.1 version of AJAX Control Toolkit. If this is still an issue in v15.1 or later, please create a new inquiry.

Closed Issue: ModalPopupExtender does not hide any elements with position style attributes in IE [12931]

$
0
0
In IE, any element with a CSS style 'position' attribute will show up through the ModalPopupExtender when it is active. This does not occur in Firefox. This is now fixed for IE8. However it is still an issue in IE7, and we do not have a fix for this.
Comments: This ticket was filed for a pre-15.1 version of AJAX Control Toolkit. If this is still an issue in v15.1 or later, please create a new inquiry.

Closed Issue: Accordion Control does not find DataSourceID correctly [20618]

$
0
0
The Accordion extender, and probably any other Ajax Toolkit control which supposedly supports DataBinding only does so if the DataSource (ObjectDataSource, SqlDataSource, etc.) resides as a sibling element within the Html of the Page (i.e. within the same NamingContainer). However, if the DataSource control is within say a Parent NamingContainer, the DataSource is not found and an Exception is thrown from the control extender. This is not consistent with all other ASP.NET Controls and needs to be fixed. A DataBound control can be bound to any DataSource control that resides within the current NamingContainer or any Parent NamingContainer.

The method within Accordion.cs "ConnectToDataSourceView()" is incorrect. Please use Reflector to decompile the "System.Web.UI.WebControls.DataBoundControlHelper" class which will show you how to properly find the DataSource control from a specified DataSourceID.

To reproduce this, just add a ObjectDataSourceControl at the root of the Page heirarchy and then add an Accordion control with it's DataSourceID set to that control. Make sure that the Accordion control is nested within another server control such as a FormView or something (maybe even nesting it with Table tags will work).
Comments: This ticket was filed for a pre-15.1 version of AJAX Control Toolkit. If this is still an issue in v15.1 or later, please create a new inquiry.

Closed Issue: CollapsiblePanelExtender conflicts with SliderExtender [11805]

$
0
0
Using CollapsiblePanelExtender and SliderExtender at the same time causes the handler of SliderExtender to dissapear, if Collapsed="true".

<cc1:CollapsiblePanelExtender ID="cpe" runat="server" AutoCollapse="False" AutoExpand="False"
CollapseControlID="lblAdjust" Collapsed="true" CollapsedSize="0" ExpandControlID="lblAdjust"
ExpandDirection="Vertical" ExpandedSize="100" ScrollContents="false" SuppressPostBack="True"
TargetControlID="pnlResults">
</cc1:CollapsiblePanelExtender>

<div class="pnlAdjustLink">
<asp:Label runat="server" ID="lblAdjust" Text="[<u>Adjust</u>]" />
</div>

<asp:Panel ID="pnlResults" runat="server">
<asp:TextBox ID="slName" runat="server" Text="50" />
<asp:TextBox ID="tbName" runat="server" CssClass="tbSliderValue" />

<cc1:SliderExtender ID="SliderExtender2" runat="server" TargetControlID="slName"
BoundControlID="tbName" Orientation="Horizontal" Minimum="0" Maximum="100" Length="160" />
</asp:Panel>
Comments: This ticket was filed for a pre-15.1 version of AJAX Control Toolkit. If this is still an issue in v15.1 or later, please create a new inquiry.

Closed Issue: Validator not working for ajaxToolkit combobox. [24417]

$
0
0
I want to validate ajaxToolkit combobox via RequiredFieldValidator or Custome Javascript.

RequiredFieldValidator not getting fired.....so i use following javascript for validation.
I dont know is the correct way to do this or any other better option available.

var _ddlPreDepartment=document.getElementById('<%=ddlPreDepartment.ClientID %>');

if (_ddlPreDepartment != null && _ddlPreDepartment != 'undefined' && _ddlPreDepartment.childNodes[0].childNodes[0].childNodes[0].childNodes[0].childNodes[0].value.toLowerCase() == "select") {
alert('Please select Department.');
_ddlPreDepartment.childNodes[0].childNodes[0].childNodes[0].childNodes[0].childNodes[0].focus();
return false;
}
Comments: Workaround found, see comments.

Created Unassigned: Error 0x800a138f - JavaScript runtime error: Unable to get property 'length' of undefined or null reference [27848]

$
0
0
I have a page that was working fine with a tree control on the left and a calendar control on the right. I added a tab control, and I started getting this error. It does not matter where I ad the tab control or what the tab control has in it - it can just be a text label in each tab.
In my research I found that this problem, or something very similar, happened with previous version and the solution was to replace the Script Manager with the control toolkit's script manager. But with version 15.1, control toolkit did away with its own script manager in favor of the default asp script manager, which I use on my page. I am using IE 11, Visual Studio Ultimate 2013, .NET 4.5.
Help please!!!

Commented Unassigned: Error 0x800a138f - JavaScript runtime error: Unable to get property 'length' of undefined or null reference [27848]

$
0
0
I have a page that was working fine with a tree control on the left and a calendar control on the right. I added a tab control, and I started getting this error. It does not matter where I ad the tab control or what the tab control has in it - it can just be a text label in each tab.
In my research I found that this problem, or something very similar, happened with previous version and the solution was to replace the Script Manager with the control toolkit's script manager. But with version 15.1, control toolkit did away with its own script manager in favor of the default asp script manager, which I use on my page. I am using IE 11, Visual Studio Ultimate 2013, .NET 4.5.
Help please!!!
Comments: I created a brand new ASP.NET Web Application project, using VS Ultimate 2013, .NET 4.5, Ajax Control Toolkit 15.1. On the front page, I put just one button and an update panel. inside the update panel, I put a tab control with only one tab that just has the word "hello" in it. On the button's click event, I tell the update panel to update itself. I get the error... If I don't use update panel, but just have a label inside the tab control, and in the button's click event handler I change the text of that label, I also get the error... but only in IE (v.11 with automatic updates). I do not get the error in Chrome. Telling my users to only use Chrome is simply not an option. This is clearly a bug, please fix this!!!
Viewing all 4356 articles
Browse latest View live


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>