This is the regular expressions pattern I use to test whether string characters represent a month number (from 01 to 12):
(0[1-9]|1[0-2])
The expression part inside the brackets is broken into 2 possible parts divided by a vertical bar (or pipe symbol): 0[1-9] or 1[0-2].
If a string matches any of the 2 parts it is true.
The first one says that the 2-character string has to start with 0 and end with any number in the range from 1 to 9, e.g. 01, 02, 09
The second part matches any 2-character string that starts with 1 and ends with 0, 1 or 2, i.e. 10, 11, or 12
C# and ASP.NET Code
Thursday, May 31, 2012
Monday, March 12, 2012
Delete Contents of IsolatedStorageFile
The easiest way to delete contents of an IsolatedStorageFile is to open it in the Truncate mode:
IsolatedStorageFile isoStore = IsolatedStorageFile.GetUserStoreForAssembly();
IsolatedStorageFileStream isoFile = new IsolatedStorageFileStream(myFileName, FileMode.Truncate, isoStore);
According to the MSDN , if a file is opened in the Truncate mode its size should be 0 bytes.
IsolatedStorageFile isoStore = IsolatedStorageFile.GetUserStoreForAssembly();
IsolatedStorageFileStream isoFile = new IsolatedStorageFileStream(myFileName, FileMode.Truncate, isoStore);
According to the MSDN , if a file is opened in the Truncate mode its size should be 0 bytes.
Labels:
File
Friday, December 2, 2011
Delete ScriptManager History
Well, I have not found a way to clear ScriptManager history proper, but the workaround is to use the AddHistoryPoint method and set the value of your property to "0":
ScriptManager1.AddHistoryPoint("myKey", "0");
ScriptManager1.AddHistoryPoint("myKey", "0");
Tuesday, October 25, 2011
Check if GridView Column Exists
If you have a DataRowView you can use the following extension method to check if a GridView column exists:
public static bool ColumnExists( this DataRowView rowData, string fldToCheck)
{
return rowData.Row.Table.Columns.Contains(fldToCheck);
}
Normally, you would use it on RowDataBound event, e.g:
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
DataRowView rowData = e.Row.DataItem as DataRowView;
string fldToCheck = "MyFieldName";
if (e.Row.RowType == DataControlRowType.DataRow)
{
if (rowData.ColumnExists(fldToCheck) ...
public static bool ColumnExists( this DataRowView rowData, string fldToCheck)
{
return rowData.Row.Table.Columns.Contains(fldToCheck);
}
Normally, you would use it on RowDataBound event, e.g:
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
DataRowView rowData = e.Row.DataItem as DataRowView;
string fldToCheck = "MyFieldName";
if (e.Row.RowType == DataControlRowType.DataRow)
{
if (rowData.ColumnExists(fldToCheck) ...
Labels:
GridView
Monday, October 17, 2011
Modify Query String
If you build a hyperlink on a web page dynamically, sometimes you may need to append or modify an existing query string.
To modify a url with an existing query string, first grab the AbsoluteUrl property:
string path = Request.Url.AbsolutePath ;
This will give you a url wihout the query string portion.
If you need to reuse an existing portion of the query string, you have to get it yourself, e.g:
string key = Request.QueryString["key"];
string path = Request.Url.AbsolutePath + "?key="+ key;
Now, you can build your url:
string url = path+ "&key2="+ myValue;
Thursday, October 13, 2011
Find GridView Column Index
If you create GridView columns dynamically using the AutogenerateColumns = true feature, sometimes you need to find a column index from the column name.
I created an extension method to find a column index:
This is how you call from the RowDataBound event handler:
I created an extension method to find a column index:
public static int GetIndex(this DataRowView tableData, string fieldName) { DataColumn dc = tableData.DataView.Table.Columns[fieldName]; if (dc != null) { return dc.Ordinal; } return -1; }
This is how you call from the RowDataBound event handler:
DataRowView tableData = e.Row.DataItem as DataRowView; int pos = tableData.GetIndex("MyFieldName"); if (pos != -1){ //do your thing }
Labels:
GridView
Wednesday, July 27, 2011
Subscribe to:
Posts (Atom)