Tuesday, October 4, 2011

jQuery modal alert in Page_Load


To insert a jQuery alert into Page_Load method of an our WebForm (maybe for a bad result of an operation) could not be simple, 'cause Page_Load method is invoked before thar the page loads included script files.

To solve it, just do this:


Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load

[…]
ScriptManager.RegisterClientScriptInclude(Page, Page.GetType, Guid.NewGuid().ToString(), Page.ResolveUrl("~/js/jquery-1.6.2.min.js"))
        ScriptManager.RegisterClientScriptInclude(Page, Page.GetType, Guid.NewGuid().ToString(), Page.ResolveUrl("~/js/jquery-ui-1.8.16.custom.min.js"))
        Dim sb As New StringBuilder
        sb.Append("$(function() { ")
        sb.Append(" $( '#dialog-message-error' ).dialog({")
        sb.Append("    modal: true,")
        sb.Append("    buttons: {")
        sb.Append("        Ok: function() {")
        sb.Append("               $( this ).dialog( 'close' );")
        sb.Append("        }")
        sb.Append("    }")
        sb.Append(" });")
        sb.Append("});")
        ScriptManager.RegisterClientScriptBlock(Page, Page.GetType, Guid.NewGuid().ToString(), sb.ToString, True)
End Sub


It's supposed to have jquery and jquery-ui script files into the "js" folder on application root, and that this div exists:


<div id="dialog-message-error" title="Error" style="display: none; font-size: small">
<div class="ui-state-error ui-corner-all" style="padding: 0 .7em;">
<p>
<span class="ui-icon ui-icon-alert" style="float: left; margin-right: .3em;">span>
<strong>Error:strong> Error text....
p>
div>
div>

Monday, October 3, 2011

Android: Screen dimensions and orientation


/* get display from WindowManager */
Display display = ((WindowManager) getSystemService(WINDOW_SERVICE)).getDefaultDisplay();
           
/* get infos */
int width = display.getWidth();
int height = display.getHeight();
int orientation = display.getOrientation();

Thursday, September 29, 2011

Android: Dial a phone number


import android.app.Activity;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.view.KeyEvent;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.LinearLayout;

public class DialANumber extends Activity {
      EditText mEditText_number = null;
      LinearLayout mLinearLayout_no_button = null;
      Button mButton_dial = null;
     
      @Override
      public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            mLinearLayout_no_button = new LinearLayout(this);
           
            mEditText_number = new EditText(this);
            mEditText_number.setText("5551222");
            mLinearLayout_no_button.addView(mEditText_number);
            mButton_dial = new Button(this);
            mButton_dial.setText("Dial!");
            mLinearLayout_no_button.addView(mButton_dial);
            mButton_dial.setOnClickListener(new View.OnClickListener() {
                  public void onClick(View v) {
                             performDial();
                  }
            });
           
            setContentView(mLinearLayout_no_button);
      }
     
      public boolean onKeyDown(int keyCode, KeyEvent event) {
            if (keyCode == KeyEvent.KEYCODE_CALL) {
                  performDial();
                  return true;
            }
            return false;
      }
     
      public void performDial(){
            if(mEditText_number!=null){
                  try {
                        startActivity(new Intent(Intent.ACTION_CALL, Uri.parse("tel:" + mEditText_number.getText())));
                  }
                  catch (Exception e)
                  {
                        e.printStackTrace();
                  }
            }
      }

} 

Tuesday, September 27, 2011

Android: Load image from web


public Bitmap getRemoteImage(final URL aURL) {
      try {
            final URLConnection conn = aURL.openConnection();
            conn.connect();
            final BufferedInputStream bis = new BufferedInputStream(conn.getInputStream());
            final Bitmap bm = BitmapFactory.decodeStream(bis);
            bis.close();
            return bm;
      } catch (IOException e) {
            [...]
      }
      return null;
}

Tuesday, September 20, 2011

DataTable sorting

Sort a DataTable is a very simple activity:


[VB.Net]
dt.DefaultView.Sort = "ColumnName"  'normal DataTable 

ds.Tables("TableName").DefaultView.Sort = "ColumnName"  'DataTable in DataSet


[C#]
dt.DefaultView.Sort = "ColumnName"  'normal DataTable

ds.Tables["TableName"].DefaultView.Sort = "ColumnName"  'DataTable in DataSet


With this snippet you don't "physically" order the content of the DataTable but it's default view. But for data visualization purpose and other the result is the same.
Using this DataTable, for example, as datasource for a GridView the list will be sorted based of the used criteria (ColumName).