File: Windows.Win32.LVCOLUMNW.g.cs
Project: src\src\System.Windows.Forms.Primitives\src\System.Windows.Forms.Primitives.csproj (System.Windows.Forms.Primitives)
// ------------------------------------------------------------------------------
// <auto-generated>
//     This code was generated by a tool.
//
//     Changes to this file may cause incorrect behavior and will be lost if
//     the code is regenerated.
// </auto-generated>
// ------------------------------------------------------------------------------

#pragma warning disable CS1591,CS1573,CS0465,CS0649,CS8019,CS1570,CS1584,CS1658,CS0436,CS8981
using global::System;
using global::System.Diagnostics;
using global::System.Diagnostics.CodeAnalysis;
using global::System.Runtime.CompilerServices;
using global::System.Runtime.InteropServices;
using global::System.Runtime.Versioning;
using winmdroot = global::Windows.Win32;
namespace Windows.Win32
{
	namespace UI.Controls
	{
		/// <summary>Contains information about a column in report view. This structure is used both for creating and manipulating columns. This structure supersedes the LV_COLUMN structure. (Unicode)</summary>
		/// <remarks>
		/// <para>If a column is added to a list-view control with index 0 (the leftmost column), it is always LVCFMT_LEFT. Setting other flags on column 0 does not override that alignment. Therefore if you keep inserting columns with index 0, the text in all columns are left-aligned. If you want the first column to be right-aligned or centered you can make a dummy column, then insert one or more columns with index 1 or higher and specify the alignment you require. Finally delete the dummy column.</para>
		/// <para>> [!NOTE] > The commctrl.h header defines LVCOLUMN as an alias which automatically selects the ANSI or Unicode version of this function based on the definition of the UNICODE preprocessor constant. Mixing usage of the encoding-neutral alias with code that not encoding-neutral can lead to mismatches that result in compilation or runtime errors. For more information, see [Conventions for Function Prototypes](/windows/win32/intl/conventions-for-function-prototypes).</para>
		/// <para><see href="https://learn.microsoft.com/windows/win32/api/commctrl/ns-commctrl-lvcolumnw#">Read more on docs.microsoft.com</see>.</para>
		/// </remarks>
		[global::System.CodeDom.Compiler.GeneratedCode("Microsoft.Windows.CsWin32", "0.3.151+58e949951d.RR")]
		internal partial struct LVCOLUMNW
		{
			/// <summary>Type: <b><a href="https://docs.microsoft.com/windows/desktop/WinProg/windows-data-types">UINT</a></b></summary>
			internal winmdroot.UI.Controls.LVCOLUMNW_MASK mask;

			/// <summary>Type: <b>int</b></summary>
			internal winmdroot.UI.Controls.LVCOLUMNW_FORMAT fmt;

			/// <summary>
			/// <para>Type: <b>int</b> Width of the column, in pixels.</para>
			/// <para><see href="https://learn.microsoft.com/windows/win32/api/commctrl/ns-commctrl-lvcolumnw#members">Read more on docs.microsoft.com</see>.</para>
			/// </summary>
			internal int cx;

			/// <summary>
			/// <para>Type: <b><a href="https://docs.microsoft.com/windows/desktop/WinProg/windows-data-types">LPTSTR</a></b> If column information is being set, this member is the address of a null-terminated string that contains the column header text. If the structure is receiving information about a column, this member specifies the address of the buffer that receives the column header text.</para>
			/// <para><see href="https://learn.microsoft.com/windows/win32/api/commctrl/ns-commctrl-lvcolumnw#members">Read more on docs.microsoft.com</see>.</para>
			/// </summary>
			internal winmdroot.Foundation.PWSTR pszText;

			/// <summary>
			/// <para>Type: <b>int</b> Size in <b>TCHAR</b>s of the buffer pointed to by the <b>pszText</b> member. If the structure is not receiving information about a column, this member is ignored.</para>
			/// <para><see href="https://learn.microsoft.com/windows/win32/api/commctrl/ns-commctrl-lvcolumnw#members">Read more on docs.microsoft.com</see>.</para>
			/// </summary>
			internal int cchTextMax;

			/// <summary>
			/// <para>Type: <b>int</b> Index of subitem associated with the column.</para>
			/// <para><see href="https://learn.microsoft.com/windows/win32/api/commctrl/ns-commctrl-lvcolumnw#members">Read more on docs.microsoft.com</see>.</para>
			/// </summary>
			internal int iSubItem;

			/// <summary>
			/// <para>Type: <b>int</b></para>
			/// <para><a href="https://docs.microsoft.com/windows/desktop/Controls/common-control-versions">Version 4.70</a>. Zero-based index of an image within the image list. The specified image will appear within the column.</para>
			/// <para><see href="https://learn.microsoft.com/windows/win32/api/commctrl/ns-commctrl-lvcolumnw#members">Read more on docs.microsoft.com</see>.</para>
			/// </summary>
			internal int iImage;

			/// <summary>
			/// <para>Type: <b>int</b></para>
			/// <para><a href="https://docs.microsoft.com/windows/desktop/Controls/common-control-versions">Version 4.70</a>. Zero-based column offset. Column offset is in left-to-right order. For example, zero indicates the leftmost column.</para>
			/// <para><see href="https://learn.microsoft.com/windows/win32/api/commctrl/ns-commctrl-lvcolumnw#members">Read more on docs.microsoft.com</see>.</para>
			/// </summary>
			internal int iOrder;

			/// <summary>
			/// <para>Type: <b>int</b> <b>Windows Vista</b>. Minimum width of the column in pixels.</para>
			/// <para><see href="https://learn.microsoft.com/windows/win32/api/commctrl/ns-commctrl-lvcolumnw#members">Read more on docs.microsoft.com</see>.</para>
			/// </summary>
			internal int cxMin;

			/// <summary>
			/// <para>Type: <b>int</b> <b>Windows Vista</b>. Application-defined value typically used to store the default width of the column. This member is ignored by the list-view control.</para>
			/// <para><see href="https://learn.microsoft.com/windows/win32/api/commctrl/ns-commctrl-lvcolumnw#members">Read more on docs.microsoft.com</see>.</para>
			/// </summary>
			internal int cxDefault;

			/// <summary>
			/// <para>Type: <b>int</b> <b>Windows Vista</b>. Read-only. The ideal width of the column in pixels, as the column may currently be autosized to a lesser width.</para>
			/// <para><see href="https://learn.microsoft.com/windows/win32/api/commctrl/ns-commctrl-lvcolumnw#members">Read more on docs.microsoft.com</see>.</para>
			/// </summary>
			internal int cxIdeal;
		}
	}
}