Windows Develop Bookmark and Share   
 index > Windows Forms General > Converting DataGridview Alignment to StringAlignment
 

Converting DataGridview Alignment to StringAlignment

I am printing a DataViewGrid and have set up a case switchto convert the DGV alignment to the string alignment

switch (ParmDataGridView[EnumColumn, EnumRow].Style.Alignment){
    case DataGridViewContentAlignment.TopLeft: CurrentStringFormat.Alignment = StringAlignment.Near; break;
    case DataGridViewContentAlignment.MiddleLeft: CurrentStringFormat.Alignment = StringAlignment.Near; break;
    case DataGridViewContentAlignment.BottomLeft: CurrentStringFormat.Alignment = StringAlignment.Near; break;
    case DataGridViewContentAlignment.TopCenter: CurrentStringFormat.Alignment = StringAlignment.Center; break;
    case DataGridViewContentAlignment.MiddleCenter: CurrentStringFormat.Alignment = StringAlignment.Center; break;
    case DataGridViewContentAlignment.BottomCenter: CurrentStringFormat.Alignment = StringAlignment.Center; break;
    case DataGridViewContentAlignment.TopRight: CurrentStringFormat.Alignment = StringAlignment.Far; break;
    case DataGridViewContentAlignment.MiddleRight: CurrentStringFormat.Alignment = StringAlignment.Far; break;
    case DataGridViewContentAlignment.BottomRight: CurrentStringFormat.Alignment = StringAlignment.Far; break;
}



This works fine, but I was wondering if there is some sort of direct conversion function that would allow me to set it in just one line, rather than having to test for every possibility and set the string alingment based on the result.
JimGuyer  Friday, September 25, 2009 1:52 PM
No, I don't think there could be direct conversion available, you have to create your custom function

But you can write the code as below to make it more easier to understand
switch (ParmDataGridView[EnumColumn, EnumRow].Style.Alignment)
            {

                case DataGridViewContentAlignment.TopLeft:
                case DataGridViewContentAlignment.TopCenter:
                case DataGridViewContentAlignment.TopRight:
                    CurrentStringFormat.Alignment = StringAlignment.Near;
                    break;

                case DataGridViewContentAlignment.MiddleLeft:
                case DataGridViewContentAlignment.MiddleCenter:
                case DataGridViewContentAlignment.MiddleRight:
                    CurrentStringFormat.Alignment = StringAlignment.Center;
                    break;

                case DataGridViewContentAlignment.BottomCenter:
                case DataGridViewContentAlignment.BottomLeft:
                case DataGridViewContentAlignment.BottomRight:
                    CurrentStringFormat.Alignment = StringAlignment.Far;
                    break;
            }

Gaurav Khanna
  • Marked As Answer byJimGuyer Friday, September 25, 2009 6:13 PM
  •  
Khanna Gaurav  Friday, September 25, 2009 6:02 PM
No, I don't think there could be direct conversion available, you have to create your custom function

But you can write the code as below to make it more easier to understand
switch (ParmDataGridView[EnumColumn, EnumRow].Style.Alignment)
            {

                case DataGridViewContentAlignment.TopLeft:
                case DataGridViewContentAlignment.TopCenter:
                case DataGridViewContentAlignment.TopRight:
                    CurrentStringFormat.Alignment = StringAlignment.Near;
                    break;

                case DataGridViewContentAlignment.MiddleLeft:
                case DataGridViewContentAlignment.MiddleCenter:
                case DataGridViewContentAlignment.MiddleRight:
                    CurrentStringFormat.Alignment = StringAlignment.Center;
                    break;

                case DataGridViewContentAlignment.BottomCenter:
                case DataGridViewContentAlignment.BottomLeft:
                case DataGridViewContentAlignment.BottomRight:
                    CurrentStringFormat.Alignment = StringAlignment.Far;
                    break;
            }

Gaurav Khanna
  • Marked As Answer byJimGuyer Friday, September 25, 2009 6:13 PM
  •  
Khanna Gaurav  Friday, September 25, 2009 6:02 PM
Excellent!!! Thanks very much. I didn not know you could stack them up that way.
JimGuyer  Friday, September 25, 2009 6:14 PM

You can use google to search for other answers

Custom Search

More Threads

• how to retreive a value from a text box created at runtime
• mask for phone number possible extention
• Find feature in Web Browser control?
• how do i code something like axwindowsmediaplayer??
• How to reuse a button ??Whats the logic behaind that?
• Performance bug in TableLayoutPanel
• axWebBrowser check checkbox
• mainMenu Hide and Show
• Form's DialogResult Property
• GUI Unit tests