eWorld.UI - Matt Hawley

Ramblings of Matt

Microsoft is using MY Controls

November 15, 2004 18:56 by matthaw
I was working with one of our engineers getting our company information completed after we just passed an ISV competency test through Microsoft, and while I was filling out the page, I noticed there's a Calendar control on it. So I clicked it, and hey - it looks like mine. Examining the source of the page reveals that it IS mine. Woah, talk about cool...Microsoft is using MY calendar popup control and MY numeric textbox. That gave me a high for the day, and its only 10AM.

Interesting Download Statistics

October 23, 2004 00:47 by matthaw

I'm doing some digging in my control download stats just to kinda see how things are going. Some of these results may be suprising, others just borderline insane.

Total downloads: ~37000
Total unique downloads by email: ~21800
Total Calendar Popup downloads: ~17500
Highest Download Day: 9/26/2003 with 271 downloads
Lowest Download Day: 4/4/2003 and 4/5/2003 with 1 download each day
Average downloads per day: ~65
Most commonly used Fake Email address: a rendition of "a@a.com", w/ ~310 downloads

Pretty cool stuff that I've collected over the last year and a half. I love looking at these types of things, they're so cool.



Featured in asp.netPRO Newsletter

September 13, 2004 16:17 by matthaw
I ran across this writeup through my site statistics and noticed a very nice article on several ASP.NET control developers, one of which being me. I'm not exactly sure when or where this was released, but based on the URL, I'm guessing it was released September of 2004. I have to say that this was by far a shock for me, and I'm quite pleased. Not that I'm bragging or anything, but I did get most of the rave in the article. Andy's and Peter's were just side notes, it seemed.

The Girlfriend Test

August 8, 2004 07:33 by matthaw

I think this is by far the best test for any tool or control, thanks Shannon!

"I had my girlfriend sit down and run "the girlfriend test" on your datepicker.  She'd never seen the calendar at all before; I just put her on your demo page and told her to enter her birthday in the box.

The longest pause was about 2 seconds or so when she realized she didn't want to "previous month" through 30 years and looked for what to do instead.  

Total time was under 15 seconds.  She never asked a question or grew frustrated.  

That's a sure sign of success for you control, I think."

I wonder if my girlfriend can pass the test...

Update: About 20 seconds here...another success story.



Best Constructive Critiscm Ever

June 10, 2004 19:43 by matthaw

So, I'm not one to compete with WTF, but I just got the following email and it just completely irked me on how blatently obvious stupid people are:

“I am not able to get the Calendar and TimePicker to look reasonable.    The calendar is long, narrow and ugly.   I can't get the shape to change. The Timepicker does not focus on the times listed. The display area is much bigger than needed to hold the values and you must scroll to the right to ever see a number.  Also,  both Calendar and Timepicker displays allow underlying  'select' boxes to show through.

The controls were very easy to put in and work great but the displays are so bad that they cannot be used..”

How nice of this friendly guy...now, can you imagine what I wrote? Can you believe that it was somewhat nice? What's your verdict...

“I'll take this issue by issue...

 
"The calendar is long, narrow and ugly"
 
- There are many properties to solve this. First off, you can utilize the CalendarWidth property to set a reasonable width to make it not so "long"
- There are also a ton of Style properties (MonthHeaderStyle, DayHeaderStyle, SelectedDateStyle, etc.) that you can set to make it not "ugly"
 
"The Timepicker does not focus on the times listed"
 
- This is a known issue, and will be looked at for the next version.
 
 
"The display area is much bigger than needed to hold the values and you must scroll to the right to ever see a number."
 
- There are a multitude of properties to change how the Time Picker is displayed. For instance, you can change NumberOfColumns, PopupHeight, and PopupWidth to completely control how "big" it is as well as needing to scroll to the right to see all the numbers.
 
"Also,  both Calendar and Timepicker displays allow underlying  'select' boxes to show through."
 
- Yes, I'm aware of this. It's a known imperfection on how "windowing" takes place in the browser. Drop down lists, Listboxes, and IFrames all fall under this category, and take the highest Z-Index precedence no matter what. Consider using PopupLocation along with DisplayOffset[X/Y] properties to move the popups around. If you're still having troubles, you can always set EnableHideDropDown to True, which will hide the DropDownLists and ListBoxes from the page when the Popups are visible.
 
Now, I don't mind constructive critiscm, however it's blatently obvious that you didn't even bother reading the Help, or check out the properties to see if there were things that could alleviate your problems prior to complaining about them. The control is simple to use, yes, but sometimes (for more advanced webforms), more configuration is needed than normal. Others have expressed their concerns like you have (prior to a way of handling them), which is why these properties exist.
 
Also, I would like to point out another great resource, my forums. There are hundreds of posts about questions that you can find information about. You can find my forums at http://www.eworldui.net/forums
 
So, there you have it, blatant answers about certain issues that have been resolved for about a year now. Thanks for stating the obvious, jerk.


Hop on the eWorld.UI Train

May 25, 2004 19:55 by matthaw

I've finally come to the crossroads of having very little time to advance my custom controls, and realized that I need to take on 1 or 2 development partners to help make the custom controls great.

Here are some stipulations:

  • You need to be proficient in .NET, specifically using C#, for at least 1-2 years.
  • Previous ASP.NET server control development a plus.
  • Previous work will need to be available upon request so I can select the best candidate(s) to suit my needs.
  • Be willing to donate their time, though dev partners will get a cut of all future source code sales.

So what are some of the benefits?

  • Help create some of the best free ASP.NET server controls in the community.
  • Donate your time from home!
  • Use Vault as a SCC - no licensing cost to you.
  • A cut of all future source code sales (% has not been determined).

So, if your interested in lending a hand, contact me with a resume and any pertinent information.



EmptyDataGrid - Bug

May 11, 2004 00:42 by matthaw

I was working with my EmptyDataGrid control on a project at work today, when I noticed a bug that could affect just about anyone using it. It turns out that if you have Paging turned on, and no data is returned, the EmptyTemplate gets appended to the DataGrid after the Pager item.

Therefore, a workaround is in need, so before you bind to the EmptyDataGrid, run this check:

[VB.NET]
If DataSet1.Tables(0).Rows.Count = 0 Then
  EmptyDataGrid1.AllowPaging = False
Else
  EmptyDataGrid1.AllowPaging = True
End If

[C#]
if(DataSet1.Tables[0].Rows.Count == 0)
{
    EmptyDataGrid1.AllowPaging = false;
}
else
{
    EmptyDataGrid1.AllowPaging = true;
}

I've noted this bug to be fixed in the next version.



Updated Custom Control Set

February 3, 2004 17:51 by matthaw

It was brought to my attention Saturday evening (through today) after I released my version 1.9 control set, that a few major "show stopper" bugs existed.  As such, I've patched them up and re-released v1.9 with the updated code.  Here's a list of those issues that were resolved:

  • Regular databinding to the Multi-Text List controls did not work.
  • Using AccordionExternalResourcePath failed to set properly for the AccordionPanel.
  • Javascript errors for CollapsablePanel when AllowTitleExpandCollapse was true.

If you've downloaded my control set prior to 8:45 AM Central time this morning, I would suggest re-downloading the controls to receive the latest build.  Go to my download page.



Release: Excentrics World Custom Controls 1.9

January 31, 2004 21:57 by matthaw

The long awaited 1.9 release of my Custom Controls has finally came, and gone.  Today I released this version that contains huge improvments over version 1.8.2, as well as 2 new controls, Accordion Panel and Empty DataGrid.  To download these controls, please visit Excentrics World

Now, for the good stuff, the changes:

Bread Crumb Trail:
- Added SessionName to allow for multiple bread crumbs in a site.
- Added Reset method to reset the crumbs, viewstate, and session.

Calendar Popup:
- Fixed Text not being applied to AlternateText of the Image.
- Fixed toggling of Enabled on postbacks with DisableTextboxEntry true not allowing manual entry.
- Fixed DropDownLists and ListBoxes not being hidden correctly if more than 1 form exists.
- Fixed VisibleDate not being set correctly when date exceeds the lower or upper bound date.
- Added Holiday collection, Holidays, that will allow you to add special dates or holidays.
- Added ability to bind data to the Holidays Collection using HolidayDataSource, HolidayDataMember, and HolidayDataField
- Added Button and Image display type.  This will not display the date to the user.
- Added NextMonthImageUrl, PreviousMonthImageUrl, NextYearImageUrl, PreviousYearImageUrl properties to set the prev/next month and year links as images.
- Added Reset methods to reset the date.

Collapsable Panel:
- Fixed OnInit method calling OnLoad method inadvertantly.
- Fixed Collapsed being overriden by loading the view state after it has changed from a previous postback.
- Fixed Image or Expand/Collapse text not showing when displayed on the left.
- Fixed support for Opera based browsers.
- Added Sliding effect for IE based browsers.
- Added CollapsedTitleStyle for varying the style for collapsed and expanded views.
- Added JavascriptOnToggleFunction for processing custom javascript logic when toggled.

Faq Repeater:
- Fixed javascript not being inserted when no data exists.
- Fixed javascript error being displayed when no data exists.

Masked Text Box:
- Fixed support for Opera, AutoFillMask is disabled for Opera browsers.
- Fixed overwriting of onfocus and onchange attributes.
- Added IsRequired, RequiredErrorMessage, and RequiredErrorText.
- Added ValidatorStyle for the RegEx and Required Validators.

Multi-Text List Controls:
- Fixed values not being bound when in a DataGrid.

Numeric Box:
- Fixed support for Opera browsers.
- Added ability to accept 1 or 2 characters for the dollar sign.
- Added RawText property that retrieves the text without any currency formatting.
- Added PlacesBeforeDecimal to handle the number of numbers can be entered prior to the decimal point.

Ordered List Box:
- Added SortOrder property and Sort method.
- Added LinkAlignment that allows you to define which side the links are located.
- Added DisplayAsButtons that will show buttons instead of links or images.

Time Picker:
- Fixed Text not being applied to AlternateText of the Image.
- Fixed SelectedTime not correct upon postback.
- Fixed Javascript error when ShowClearTimeText=true and EnableHideDropDown=true
- Added Button and Image type.  This will not display the time to the user.
- Added OneMinute to the TimeInterval enumeration.
- Added Reset methods to reset the time.



New Control: EmptyDataGrid

January 13, 2004 19:01 by matthaw
With all the talk yesterday about what to do when a DataGrid receives no data, and how v2.0 of ASP.NET should handle this, I decided to sit down and see if I could implement this as a custom server control.

Well after a few short hours, I've got a working EmptyDataGrid that inherits and extends the current DataGrid. It adds 2 new properties, EmptyDataTemplate and EmptyDataStyle. The behavior for displaying the datagrid is different depending on your data source, however. For example, if you use a DataSet/DataTable, you will see the columns at the top, and the EmptyDataTemplate as a row beneath that. However, if you use a DataReader as the data source, then you will only see the EmptyDataTemplate displayed.

If you're extremely excited to see this in action, let me know and I can post a sample. However, this control will not be released until I release v1.9 of my control set. Though, if you're in dire need, I can create a custom assembly with only this control, just let me know.  A custom assembly has been put together, however you need to contact me to receive it.  Note that this is not an official release of the control.



Copyright © 2000 - 2024 , Excentrics World