Monday, July 20, 2015

Visual Studio 2015 Relased

Microsoft finally released VS 2015 on July 20th. It has exiting new features including

  • Live code analysis (Light Bulbs),
  • Cross-platform debugging support, 
  • Visual Studio Graphics Diagnostics ,
  • Universal Windows apps for any Windows 10 device,
  • Cross-platform mobile games in C# with Unity and many more

Reade more and download

Samitha

Wednesday, June 24, 2015

ASP.Net load Browser specific CSS

When developing Webpages you might have come across browser specific styling issues.
When dealing with IE related CSS issues conditional statements can be used as displayed below.


< !--[if IE]>
    <link rel="stylesheet" type="text/css" 
href="ie-specific.css" />
<![endif]-->
 
There will be situations where you will want to
target on different browser.
 E.g. Chrome, firefox
The code given below can be used to check the
browser type and load the 
CSS programatically.
 

 Dim Browser As HttpBrowserCapabilities = Request.Browser
        'Attach a CSS style sheet accordingly  
 Dim cs As ClientScriptManager = Nothing

If Browser.Type.StartsWith("IE") Then 'Target All IE
     cs = Page.ClientScript
     cs.RegisterClientScriptBlock(Me.GetType(), "CSSLink", "")
ElseIf Browser.Type = "Firefox" Then 'Actual version of the
                                 ' browser can be specified
     cs = Page.ClientScript
    cs.RegisterClientScriptBlock(Me.GetType(), "CSSLink", "")
 End If
 
Cheers
Samitha 

Wednesday, March 25, 2015

Disable the Asp.Net linkbutton

When you working with the Asp.Net link button, you might have noticed that even though you have disabled it (Enabled = false) the user still can click the link.

It is not as straightforward as you might have expected to completely disable the link button. Use the following code snippet achieve the desired effect.


lnkBtn.Attributes.Remove("href")
lnkBtn.Attributes.CssStyle(HtmlTextWriterStyle.Color) = "gray"
lnkBtn.Attributes.CssStyle(HtmlTextWriterStyle.Cursor) = "default"
lnkBtn.Font.Underline = False ' used to remove the underline effect when mouse-hover

Cheers
Samitha

Wednesday, February 18, 2015

Using jQuery validate plugin in Asp .Net to validate dropdownlist

The jQuery validate plugin can be used in HTML page validations. It can be easily integrated to ASP.Net forms validation as described below.

1. In the header (or in the content page if you are using master pages) put references for jQuery and jQery validator plugin.

2.In general it is recommended that you wire form validation in the DOM ready event of the jQuery. But if you are using update panels you should wire up these events in the pageLoad. In this example I am validation a dropdown list with a default value "(not set)".  This is achieved using the jQuery.validator.addMethod  as shown below.

        
              jQuery.validator.addMethod("defaultInvalid", function (value, element) {
                switch (element.value) {
                    case "(not set)":
                        if (element.name == "<%= ddlCountry.UniqueID %>") return false;
                        break;
                    default:
                        return true;
                        break;
                }
            });

3. Next include the controls to be validated in the form validate method. Remember to include the defaultInvalid: true attribute to validate the default value.

 $("#form1").validate({

                rules: {
                    "<%= ddlCountry.UniqueID %>": {
                        required: true,
                        defaultInvalid: true
                    }
                },
                messages: {
                    "<%= ddlCountry.UniqueID %>": "* Required"
                }
            });
4. Finally define the IsValid() that is called on Update click,

 function IsValid() {
            var isValid = $("#form1").valid();

            if (isValid) {
                return true;
            }
            return false;
   }
               
The trick is to call the IsValid function on the OnClientClick event of the Update button.


Sunday, February 8, 2015

visual studio 2010/2012/2013 nuget error "The underlying connection was closed: Could not establish trust relationship for the SSL/TLS secure channel"

I recently came across this issue when trying to launch the nuget package manager. It seems this issue is common to all  VS2010,2012 and 2013 versions. Follow these steps to solve the issue.

Go to VS2010/2012/2013  -> Tools -> Library Package Manager -> Package Manager Settings
Choose Package Manager -> Package Sources.
1. Add a new package source as:
Name= NugetSrc
Source= http://packages.nuget.org/v1/FeedService.svc/
2. Move Up the newly added package source to the first position.
3. UnCheck existing "Nuget official package source"
4. Restart VS2010/2012/2013

cheers,
Samitha

Monday, February 2, 2015

Find and replace text in a file in c#

The easiest way to find and replace text in a file is to use the Replace method of string as shown below.

string content= File.ReadAllText("FileName.txt");
text =
content.Replace("find text", "replace text");
File.WriteAllText("
FileName.txt", text);

You can use the Regex.Replace method for more complex replacements

Cheers,
Samitha 

Thursday, January 22, 2015

Asp.net Closing child windows from JavaScript

These maybe situations where we use some of the additional information displayed  using window.open() method. It can cause issue if we keep these open widows when dealing with different user logins within the system.

The solution is to store all opened windows in an Javascript array and close them on logout or navigation to other links or menu options.

 var openWindows = new Array();

function OpenWindow(url){
          
            openWindows.push(window.open(url));
        }


We can use the window.onbeforeunload event to close the opened windows as shown below.

   window.onbeforeunload = function () {
            closeWindows();
        };


 function closeWindows() {
            for (i = 0; i < openWindows .length; i++) if (openWindows [i] && !openWindows[i].closed)
                openWindows[i].close();
        }

Cheers
Samitha