UltimateSearch 3.1 has a lot of
new features and bug fixes.
Load Documents From Database - Use ".ashx" pages to load documents (pdf, doc, xls, ppt) from database in a content management system.
Windows Scheduled Task - Use the provided Windows executable program to update the dependency file based on your schedule.
Mobile Devices - Set the "User-Agent" parameter in the Config file so that your web server can index your website specifically for mobile devices.
Index Remote Documents - Documents (pdf, doc, xls, ppt) don't have to reside on your local machine or network anymore. You can index remote documents by specifying the links in "scanUrlList".
UltimateSpell 3.1 has a lot of
new features and bug fixes.
Negative Filtering - You can now use the ControlIdsToCheck property to exclude editable areas from the spell checking process by adding a minus "-" prefix.
Auto Position - Spell as you type boxes are now automatically positioned whenever the page layout is changed after the page is loaded.
Auto Hide Scrollbar - Scrollbar in single line textbox is now hidden.

Second part of a white paper series essential for ASP.NET developers
who want to build a powerful web UI.
ASP.NET server controls make your life easier on server-side,
but you may still need to do some client-side programming to build a powerful UI.
JavaScript is the most widely used language on the client-side, and this
FREE white paper by Karamasoft is specifically composed
for ASP.NET developers.

ASP.NET server controls make your life easier on server-side,
but you may still need to do some client-side programming to build a powerful UI.
JavaScript is the most widely used language on the client-side, and this
FREE white paper by
Karamasoft is specifically composed
for ASP.NET developers.
It's pretty straightforward to use the spell-checking
functionality of Microsoft Word in a Windows .NET
application, but it's a little bit tricky to apply
the same approach to an ASP.NET web application
due to its stateless nature.
This white paper explains how to implement a spell-checker
for ASP.NET using Word.
Source code is provided in both C# and VB for FREE.
Note that you need a Microsoft Word license on your machine
in order to use the software.
http://www.karamasoft.com/whitepapers/whitepapers.aspx
Karamasoft released a new product,
UltimateEmail, for email address validation and mail merge.
UltimateEmail includes
two server controls that come in handy in your ASP.NET applications. You can also use the
server-side API in both Web and Windows applications.
UltimateEmailValidator control validates an email address in
4 levels:
Syntax: email address syntax valid
Domain: email server (MX record) set
SMTP: email server up and running
Account: email server has the address
UltimateEmailMerge control provides you with the mail merge functionality in order to send a template email to a list of people with customized delivery and content information. You can load it from any
data source such as:

DataSet, DataTable, DataView, DataReader

Collection, Array, ArrayList, XmlDocument

Text File, Comma-delimited String
You can easily integrate it with
UltimateEditor in order to send a template email to your customers with the click of a toolbar button. It comes with sample applications in C# and VB for .NET 1.x and .NET 2.0.
Karamasoft released new versions to support AJAX, and to introduce new
features. You can now easily integrate your web pages with UltimateAjax, and
ASP.NET AJAX (former Atlas).
http://www.karamasoft.com
Karamasoft announced the initial release of UltimateCallback, an ASP.NET server control to provide callback functionality in your web applications. This control allows you to make web pages more responsive by exchanging data with the server behind the scenes. Every time the user initiates a callback request UltimateCallback control refreshes only its own contents instead of reloading the entire web page as in the case of a regular postback to server.

UltimateCallback allows web developers to AJAX-enable their web applications to increase interactivity, speed and usability. Even though remote scripting technology was known and has been used for several years there has not been a robust framework to interact with the server easily. Now you can just locate an UltimateCallback control onto your web form, and drag and drop HTML and ASP.NET controls into the UltimateCallback panel. All you have to do is to initiate a callback request from client-side and handle the request in the Callback event handler on the server-side. You're done. You will notice that only the contents of the UltimateCallback control will be updated automatically whenever the user makes a callback to server.
If you want to override the rendering mechanism you can achieve this either on the server-side or client-side based on your needs. You can return the successful callback result to a client-side function, while returning callback error to another client-side function for exception handling. You can display an HTML block while processing the callback request as well.
You can also enable caching in order to cache callback arguments and results on the client-side to improve performance. If you want to work with the latest values on the web form you can get the latest state of all form elements along with the callback request. You can initiate callbacks automatically at specified intervals in milliseconds without a single line of coding. The control provides down-level browser support by handling callback requests as regular postbacks when XMLHTTP is not supported.
For more information visit
http://www.karamasoft.com/UltimateCallback/Overview.aspx. For samples visit
http://www.karamasoft.com/Samples.aspx?component=UltimateCallback.
Karamasoft released a brand-new website navigation product, ASP.NET Sitemap Suite 1.0. It is composed of UltimateSitemap and UltimateSitemapPath server controls.
UltimateSitemap control automatically generates a sitemap of your web application in a table or treeview format. It has a built-in visual designer, Sitemap Builder, fully integrated into VS.NET. UltimateSitemapPath control generates a navigation path (breadcrumb) on your web pages. Visit www.karamasoft.com to see this new product.
Karamasoft also introduced Support Forums for developers to share and exchange information, knowledge and sample code. Visit www.karamasoft.com/forums to see the new forums website.
You can always pass variables between ASP.NET pages as part of a query string in the URL. If your form is not running at server you can also use the Request object to retrieve the values of the form elements (especially hidden input elements for this purpose). However, if you have a form with runat=server, and you don't want to expose the variables to the user then your choices are limited. Here is a way to pass variables between ASP.NET pages:
1. In your SendingPage.aspx add an item to the context.
Dim variableToPass as String = "Passed Value"
Context.Items.Add("variableToPass", variableToPass)
2. In your SendingPage.aspx call Server.Transfer to transfer to your ReceivingPage.aspx.
Server.Transfer("ReceivingPage.aspx", True)
3. In your ReceivingPage.aspx retrieve the variable from the context.
Dim receivedValue As String
receivedValue = Context.Items("variableToPass")
Note that the page URL in the address bar of the browser window will stay as SendingPage.aspx even though you are now in ReceivingPage.aspx. You can get more information on Server.Transfer vs. Response.Redirect at http://www.developer.com/net/asp/article.php/3299641.
If you are interested in passing server control values between ASP.NET pages please refer to http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpguide/html/cpconPassingServerControlValuesBetweenPages.asp.
Famil Jones,
Karamasoft
Let's say you want to trap the window close event for the web browser so that you can give a confirmation dialog asking if the user is sure to leave the page. The problem is that there is no onclose event for the window object. The closest event might be onunload since it fires immediately before the window object is unloaded. However, when the onunload event fires it is too late to display a JavaScript alert. Therefore, we need an event that fires prior to a page being unloaded, which is onbeforeunload. Define onbeforeunload event in your page <BODY> element as follows:
<BODY onbeforeunload="HandleOnClose()">
Then, add the following JavaScript code into the <HEAD> section of your ASPX page:
<script language="javascript">
<!--
function HandleOnClose() {
if (event.clientY < 0) {
event.returnValue = 'Are you sure you want to leave the page?';
}
}
//-->
</script>
The trick here is to check clientY property of the event object, which is used to set or retrieve the y-coordinate of the mouse pointer's position relative to the client area of the window, excluding window decorations and scroll bars. This way, you can detect if the user clicked on X button to close the page, or clicked on Refresh button to refresh the page, etc. This approach does not handle key events such as Alt-F4 that lets the user close the window by using the keyboard. You have to handle keyboard events separately and this issue might be a topic for another article...
Famil Jones,
Karamasoft
When you want to insert a TAB character inside a textarea (or a textbox) in a web page, you press TAB key and the focus moves to another field in the page instead of a TAB character being inserted into the textarea. The problem is that TAB key is reserved for web pages to navigate through the objects that can be focused (or blurred) inside the web page.
TAB characters are especially useful when you want to display formatted text in your HTML text field. In order to solve this problem, we need to override one of onkey related events of the text field so that the TAB character would be inserted where the cursor stays instead of the text field losing the focus to the next control in the web page. There are three onkey related events: onkeydown, onkeyup and onkeypress for an HTML text field. However, onkeypress only fires for some special character set and it does not fire for the TAB key. Therefore, we can only use onkeydown or onkeyup. We will use onkeydown event since it fires as soon as the user presses a key, not when the user releases a key.
Define onkeydown event for the asp:textbox controls in <BODY> section of your ASPX page as follows:
<asp:textbox id="TextBox1" runat="server" width="520px">Press TAB key to move the focus to the next field when the cursor is here...</asp:textbox><br>
<asp:textbox id="TextBox2" runat="server" onkeydown="HandleKeyDown(this);" width="520px">Press TAB key to insert a tab character into this textbox when the cursor is here...</asp:textbox><br>
<asp:textbox id="TextArea1" runat="server" onkeydown="HandleKeyDown(this);" width="520px" height="200px" textmode="MultiLine">Press TAB key to insert a tab character into this textarea when the cursor is here...</asp:textbox>
Then, add the following JavaScript code into <HEAD> section of your ASPX page:
<script language="javascript">
<!--
function HandleKeyDown(obj) {
var tabKeyCode = 9;
if (event.keyCode == tabKeyCode && event.srcElement == obj) {
obj.selection = document.selection.createRange();
obj.selection.text = String.fromCharCode(tabKeyCode);
event.returnValue = false;
}
}
//-->
</script>
The above code will only work for IE browsers. You will need to handle the onkeydown event differently for other browsers.
By using the above technique, we solved TAB in textarea problem in the Menu CSS text area in our MenuBuilder (visual menu designer) application of our ASP.NET Menu product, Karamasoft MenuSuite™.
Famil Jones,
Karamasoft