C#: Save a Form’s Size and Location
In an attempt to enhance user experience it may be desirable to save the size and location of a Form. When dealing with customizable user settings, it is important to determine where to
persist the user’s applications settings. The
Application class has a
UserAppDataRegistry property that references the
HKEY_CURRENT_USER\Software\[Control.CompanyName]\[Control.ProductName]\[Control.ProductVersion]. registry key in the user’s profile (If this key does not exist it is created). Here is a basic example of storing a form's state in the user's registry profile:
private void Form_Load(object sender, EventArgs e)
{
this.WindowState = (FormWindowState)FormWindowState.Parse(WindowState.GetType(), Application.UserAppDataRegistry.GetValue("WindowState", FormWindowState.Normal).ToString());
if (this.WindowState == FormWindowState.Normal)
{
int x = (int)Application.UserAppDataRegistry.GetValue("LocationX");
int y = (int)Application.UserAppDataRegistry.GetValue("LocationY");
this.DesktopLocation = new Point(x, y);
int w = (int)Application.UserAppDataRegistry.GetValue("WindowSizeW");
int h = (int)Application.UserAppDataRegistry.GetValue("WindowSizeH");
this.Size = new Size(w, h);
}
}
private void Form_FormClosing(object sender, FormClosingEventArgs e)
{
Application.UserAppDataRegistry.SetValue("WindowState", this.WindowState);
Application.UserAppDataRegistry.SetValue("WindowSizeH", this.Size.Height);
Application.UserAppDataRegistry.SetValue("WindowSizeW", this.Size.Width);
Application.UserAppDataRegistry.SetValue("LocationX", this.DesktopLocation.X);
Application.UserAppDataRegistry.SetValue("LocationY", this.DesktopLocation.Y);
}
SQL: Convert Integer to DateTime
If presented with a date represented as an integer in the format of 'YYYYMMDD', you can convert the number to a date with the following:
declare @_date as integer
set @_date = 20110910
SELECT CONVERT(DATETIME, CONVERT(CHAR(8), @_date))
SQL: Get Day of Week (Transact-SQL)
To retrieve day of week information using T-SQL you can use the DATENAME and DATEPART functions. The DATENAME function returns a character string of the datepart of a date. The DATEPART function returns an integer of the datepart of a date.
SELECT
DATENAME(dw,GETDATE()) [Day Name] -- returns the day of week name
,DATEPART(dw,GETDATE()) [Day Number] -- returns the day of week number
,DATENAME(dy,GETDATE()) [Day of Year] -- returns the day of year
,DATEPART(wk,GETDATE()) [Week Number] -- returns the week number of the year
, GETDATE() [Todays Date]
