-
Catch broken redirect statements
When programming today it is common to use code like:
- Response.Redirect("ScottGu.aspx");
The problem here is that if 'ScottGu.aspx' is moved or deleted, Visual Studio doesn't
pick it up. We want it to be strongly typed. A way to achieve this is to use a class
name:
- Response.Redirect(ScottGu); // 'ScottGu' is a class.
Now, when this file is deleted or renamed, it will generate a compile error (like
winforms)
Note we would also need the following overloads:
- void Redirect(System.Type RedirectPage);
- void Redirect(System.Type RedirectPage, string QueryString);
- void Redirect(string URL);
Sample usage:
- Redirect(ScottGu);
- Redirect(ScottGu, CustomerID=BOLID);
- Redirect(www.google.com.au);
-
V2.0: No Tab Control in ASP.NET
There is no Tab Control in ASP.NET. There are plenty of 3rd party controls but we
believe that this important functionality will be built into ASP.NET. We need a
tab control like the one used on
www.asp.net.
-
V2.0: No sort order indicator in GridView
When you enable Column Sorting in a GridView you will automatically have arrows
like this:
Unlike now, which has no indication of which column is sorting and what order it's
ordered in.
-
V2.0: TreeView Node Editor dialog needs to be
resizable
The TreeView Node Editor dialog needs to be resizable, or at least a bit larger,
so you can view the text on the left and the properties on the right without scrolling
up and down continually.
Figure: This dialog is far too small, but there is no way to resize it!
-
V2.0: PlaceHolders will be able to be resized
ASP.NET ContentPlaceHolders need be able to be able to be resized. Clearly the "Title"
and "Description" below are far too big.
Figure: The "Title" and "Description" ContentPlaceHolders are much too big, but there
is no way to resize them.
-
V2.0: Wizard control default buttons text will be
Back and Next
According to http://msdn.microsoft.com/library/en-us/dnwue/html/ch13h.asp?frame=true,
the commands for navigating through a wizard will be "< Back" and "Next
>".
Figure: Wizard Control in ASP .NET 2.0, the button text will be "Next >"
Figure: Wizard Control in ASP .NET 2.0, the button text will be "< Back"
Tip: You can change the default buttons text by adding the following text
(highlighted) to your <asp:Wizard> tag:
<asp:Wizard ID="Wizard1" runat="server" ActiveStepIndex="0"
FinishPreviousButtonText="< Back"
StartNextButtonText="Next >"
StepNextButtonText="Next >"
StepPreviousButtonText="< Back">
Read more about this on our
Rules to Better Websites.
-
BLINQ does not work with Timestamp
The reason that Blinq does not work with Timestamps in ASP.NET 2.0 is because the
ASP.NET 2.0 datasource does not support byte array serialization, even though Blinq
correctly identifies timestamps as a version field. As a result, the timestamp value
is null during post back, and fails the concurrency checking. Ultimately, it throws
the following exception:
The recommended workaround to current users
- The following code changes will be rquired in YourDatabase.cs, which is located
in App_Code folder of the BLINQ generated website:
[Column(Storage="_SSWTimestamp", DBType="rowversion NOT NULL", IsVersion=true)]
To
[Column(Storage="_SSWTimestamp", DBType="rowversion NOT NULL", UpdateCheck=System.Data.DLink.UpdateCheck.Never)]
The recommended solution to Microsoft
- Add functionality to asp.net datasource, so that, it supports byte array serialization
to recognize timestamp as a version field.
-
Date/Time Picker Control
Yep - this would be a great control to include in the box. You can simulate it today
using a Calendar control with an PopUpExtender Atlas control - but I agree having
one completely integrated one would be best.
Scott Guthrie, Microsoft
Please provide us with a Date/Time Picker Control. Rather than having Reporting
Services teams find or create their own, they could use this built-in ASP .NET control.
An additional benefit is that developers, like us, can have standard controls in
their applications.
-
-
Figure: Example of SSW's use of the Date Picker Control
Tip: I find myself always using RJS - a free one.
See
http://www.ssw.com.au/ssw/Standards/DeveloperGeneral/WebdevelopmentToolsASPNET.aspx#PopupCalendar
-
- Figure: It would be beneficial to have a built-in
Date/Time Picker control like the RJS Popup Calendar
Moreover, it would be great to have a DateRangePicker control. Instead of picking the start date and end date in two separate controls, we can pick the start date and end date easily in the same control.
-
- Figure: DateRangePicker
We also wish to see these types of controls in Microsoft SQL Reporting Services.
-
Update Schema to Include Intrinsic Client-Side
Events for ASP.NET Controls
ASP.NET Server-side controls which render elements on the client-side will have
the same intrinsic events as normal HTML elements.
Currently there is no intellisense / schema support for these events:
-
-
Figure: No intellisense / schema support for ondblclick event for ASP.NET ListBox
control.
Any ASP.NET control that renders to the client will include the same core events
as a normal HTML element, such as this input button:
-
-
Figure: Intelligence / schema support for "Input" html element.
The schema for ASP.NET controls rendering to the client will include the following,
where applicable, as per the W3C-Defined Intrinsic
Events:
onload
|
The onload event occurs when the user agent finishes loading a window or all frames
within a FRAMESET. This attribute may be used with BODY and FRAMESET elements.
|
onunload
|
The onunload event occurs when the user agent removes a document from a window or
frame. This attribute may be used with BODY and FRAMESET elements.
|
onclick
|
The onclick event occurs when the pointing device button is clicked over an element.
This attribute may be used with most elements.
|
ondblclick
|
The ondblclick event occurs when the pointing device button is double clicked over
an element. This attribute may be used with most elements.
|
onmousedown
|
The onmousedown event occurs when the pointing device button is pressed over an
element. This attribute may be used with most elements.
|
onmouseup
|
The onmouseup event occurs when the pointing device button is released over an element.
This attribute may be used with most elements.
|
onmouseover
|
The onmouseover event occurs when the pointing device is moved onto an element.
This attribute may be used with most elements.
|
onmousemove
|
The onmousemove event occurs when the pointing device is moved while it is over
an element. This attribute may be used with most elements.
|
onmouseout
|
The onmouseout event occurs when the pointing device is moved away from an element.
This attribute may be used with most elements.
|
onfocus
|
The onfocus event occurs when an element receives focus either by the pointing device
or by tabbing navigation. This attribute may be used with the following elements:
A, AREA, LABEL, INPUT, SELECT, TEXTAREA, and BUTTON.
|
onblur
|
The onblur event occurs when an element loses focus either by the pointing device
or by tabbing navigation. It may be used with the same elements as onfocus.
|
onkeypress
|
The onkeypress event occurs when a key is pressed and released over an element.
This attribute may be used with most elements.
|
onkeydown
|
The onkeydown event occurs when a key is pressed down over an element. This attribute
may be used with most elements.
|
onkeyup
|
The onkeyup event occurs when a key is released over an element. This attribute
may be used with most elements.
|
onsubmit
|
The onsubmit event occurs when a form is submitted. It only applies to the FORM
element.
|
onselect
|
The onselect event occurs when a user selects some text in a text field. This attribute
may be used with the INPUT and TEXTAREA elements.
|
onchange
|
The onchange event occurs when a control loses the input focus and its value has
been modified since gaining focus. This attribute applies to the following elements:
INPUT, SELECT, and TEXTAREA.
|
-
A top CheckBox to "select all" in web forms
The header of a checkbox column (e.g. in GridView) will contain a checkbox by default.
When this checkbox is checked, all checkboxes below are checked too. This checkbox
is more than a check box with all things (e.g. properties, methods and events) applied
to a CheckBox control.
Figure: A top checkbox to select all checkboxes underneath it in a web form
-
Add support for pasting in screenshots in OWA
Outlook supports pasting an image into the content (when we create an email like
this one)...... It has for more than 10 years.
But I am yet to see this in any other application (correct me if I am wrong).
Eg. The developers of an application I was reviewing recently wanted to improve
their feedback form to allow users to include screen captures.
Q:\ How did they do it?
A:\ By adding an 'Attachment' button. This allows the user to save the image to
their PC, click the 'Attachment' button, then browse to the file they wish to attach.
This is a pain in the neck for the users.
I would like both the Windows Forms and Web Forms teams to provide a form (out of
the box) that will support pasting in an image from the clipboard...... like you can
using Outlook
PS: Do we need an new XHTML datatype field in SQL Server 2008?
-
-
Figure: The Attachment button will not be needed.
Note: We need the same on Windows forms