|
Is this a WinForms datagrid (prolly not), an ASP.NET grid or a WPF-grid? In WinForms, life is simple;
namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
class Test
{
public string Item1 { get; set; }
public string Item2 { get; set; }
public string Item3 { get; set; }
}
DataGridView grid;
public Form1()
{
List<Test> data = new List<Test>();
data.Add(new Test() { Item1 = "bla", Item2 = "foos", Item3 = "bar" });
InitializeComponent();
grid = new DataGridView() { Dock = DockStyle.Fill };
grid.DataSource = data;
Controls.Add(grid);
MessageBox.Show(string.Format("There are {0} columns in this grid", grid.Columns.Count));
}
protected override void OnShown(EventArgs e)
{
base.OnShown(e);
grid.Columns[0].DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter;
}
}
}
Bastard Programmer from Hell
If you can't read my code, try converting it here[^]
|
|
|
|
|
No i am creating in windows service application. There i am using datagrid
through service cs file i am creating dataset
DataGrid dg1 = new DataGrid();
dg1.ItemStyle.HorizontalAlign = HorizontalAlign.Center; this will work for all the column items and align will become center.
but i need to do for particular column
not working
dg1.Columns[3].ItemStyle.HorizontalAlign = HorizontalAlign.Center;
How to achieve this and it is nor datagridview only DataGrid.
Please reply me.
|
|
|
|
|
You're creating a UI element inside a Windows Service? Why? A service has no UI, so what are you trying to accomplish here?
|
|
|
|
|
We can use dataset and result is coming and displaying 4 columns.
Only i need to do particular column alignment.
But its not working.
|
|
|
|
|
You haven't answered my question. Why are you trying to do this inside a service? A service should have no user interface.
|
|
|
|
|
Ya but i have created one html file and for that i am sending this dataset after rendering as
StringWriter stringWriter1 = new StringWriter();
HtmlTextWriter htmlWrite1 = new HtmlTextWriter(stringWriter1);
i am trying read html file and after reading just rendering the control as shown below
dg1.RenderControl(htmlWrite1);
i am getting html file result and that 4 column grid.
Only i need to make particular column alignment.
How to do this.
|
|
|
|
|
If you're just trying to write out to a file as HTML, then why are you trying to write it out this way? A simpler method would be to save your DataSet out as XML and use a page that XPath to read and display the content.
|
|
|
|
|
Ummm, you've got a HUGE problem. Windows Services cannot display a UI. Starting with Windows Vista, services that attempt to display a UI only show their interface on a separate desktop from the user that's logged in. The user gets a notification that a service has put up a UI window and asked if they want to switch desktops to see it.
UI restrictions on services have now gotten to the point where a service cannot show a UI at all. This "transition" period comes from the days on Windows XP where a service could show a UI. This is a security risk so Microsoft has removed the ability to do this from Windows.
|
|
|
|
|
Ya but i have created one html file and for that i am sending this dataset after rendering as
StringWriter stringWriter1 = new StringWriter();
HtmlTextWriter htmlWrite1 = new HtmlTextWriter(stringWriter1);
i am trying read html file and after reading just rendering the control as shown below
dg1.RenderControl(htmlWrite1);
i am getting html file result and that 4 column grid.
Only i need to make particular column alignment.
How to do this.
|
|
|
|
|
What does this have to do with writing a Windows Service application?
|
|
|
|
|
Next to the "no UI" issue, there's also the point the a DataGrid[^] doesn't have a columns-property.
Yes, it is faster in displaying data than a DataGridView, but it doesn't have as much features built in.
Bastard Programmer from Hell
If you can't read my code, try converting it here[^]
|
|
|
|
|
But through coding if i type DataGrid.Columns[]
Columns property it will show. But after adding below code it is not working
dg1.Columns[3].ItemStyle.HorizontalAlign = HorizontalAlign.Center;
What to do. Please reply me.
|
|
|
|
|
ven753 wrote: Columns property it will show.
Only if you're referencing a DataGridView, and that's a different control.
Either you switch to the DataGridView, or you adjust the requirement of needing the alignment.
Bastard Programmer from Hell
If you can't read my code, try converting it here[^]
|
|
|
|
|
I have a string array which will be different but I always need to create a CreateTextTableCell based on AppSettings("RosterFields") fileds count. If no string is found in ArrayHeader create an empty cell up to Settings("RosterFields"). My code below is not working what I have missed?
Dim ArrayHeader() As String = {"1","2"}
For columnIndex = 0 To ConfigurationManager.AppSettings("RosterFields") - 1
For Each value As String In ArrayHeader
CreateTextTableCell(Row, columnIndex, value.ToString, currentRow, 182, True)
Next
Next
|
|
|
|
|
byka wrote: what I have missed? Point 9:9.Please do not post links to your question into an unrelated forum such as the lounge. It will be deleted. Likewise, do not post the same question in more than one forum. I've posted an answer in the VB.NET forum.
Bastard Programmer from Hell
If you can't read my code, try converting it here[^]
|
|
|
|
|
I need to retrieve the .NET 4.0 install path from a batch file. Following is my batch file code snippet:
REG QUERY "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP" /s|FIND "InstallPath"|FIND "4.0."||ECHO
The result is
InstallPath REG_SZ C:\Windows\Microsoft.NET\Framework64\v4.0.30319\
However, I need to assign the path to a variable. I found some related post online but can’t get any of them work. Any advice is greatly appreciated!
Cheers!
|
|
|
|
|
Why are you using a .bat file? You can extract this information direct from the registry via the RegistryKey Class[^].
|
|
|
|
|
I know using C# I can do almost anything. However, QA have been using batch files for long time. They know nothing about .NET programming. I am helping to add new features to the batch file, not making technical change at this point. Thanks!
|
|
|
|
|
Then your statement "However, I need to assign the path to a variable.", needs more detail about what this has to do with the .NET framework.
|
|
|
|
|
The bottom line is I need to run ngen.exe from the batch file. So I need to know the exact path which is different on a 32bit or 64 bit machine, and .NET 4 with directly minor versions.
|
|
|
|
|
Sorry, but that still does not explain what you want your batch file to do.
|
|
|
|
|
I think I have figured out what you are trying to do. You need two batch files, the first file is:
REG QUERY "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP" /s|FIND "InstallPath"|FIND "4.0." > findPath.tmp
set /P tmpPath= < findPath.tmp
call splitter %tmpPath%
set /P tmpPath= < findPath.tmp
The second file named splitter.bat is:
echo %3 >findPath.tmp
At the end you should be able to see the variable tmpPath contains just the path portion of the results from the FIND command.
|
|
|
|
|
That's smart, and is really helpful. Thank you, Richard!
|
|
|
|
|
It took a while, but I finally got there; hope it helps you.
|
|
|
|
|
Simple; create a console-application that retrieves the path. Call it from the batch-file.
That's how it SHOULD be done. If the network-admin complains that he won't allow foreign executables, simply upload the sourcecode to do it (as a text-file) and compile it on the target-machine itself.
If he still complains, make it a simple powershell-script. If he keeps complaining, send him here.
Yes, can also be done with the commands already available, and that way should be avoided. A hint below;
REGEDIT.EXE [ /L:system | /R:user ] /E exportfile.REG "registry_key" Now you have the complete key in a text-file. Next, research "FOR".
Bastard Programmer from Hell
If you can't read my code, try converting it here[^]
|
|
|
|