C# Class SIL.FieldWorks.Common.Controls.DhListView

Derived from ListView, this class supports notifying the browse view when resizing the columns. This class holds the headers that show above columns of data that BrowseViewer knows about.
Inheritance: System.Windows.Forms.ListView, IFWDisposable
Afficher le fichier Open project: sillsdev/FieldWorks Class Usage Examples

Private Properties

Свойство Type Description
DhListView_DrawColumnHeader void
GetArrowBitmap System.Drawing.Bitmap
GetColumnIndexFromMousePosition int
HandleColumnClick void
HandleColumnReordered void
IsThisColumnChangeAllowable bool
ListView_ColumnWidthChanged void
ListView_ColumnWidthChanging void
m_timer_Tick void

Méthodes publiques

Méthode Description
CheckDisposed ( ) : void

Check to see if the object has been disposed. All public Properties and Methods should call this before doing anything else.

DhListView ( BrowseViewer bv ) : System

Create one and set the browse view it belongs to.

ShowHeaderIcon ( int columnIndex, SortOrder sortOrder, ArrowSize size ) : void

Set the header icon. (Thanks to a post by Eddie Velasquez.)

Méthodes protégées

Méthode Description
Dispose ( bool disposing ) : void

Releases the unmanaged resources used by the T:System.Windows.Forms.ListView and optionally releases the managed resources.

OnColumnRightClick ( int iItem, Point ptLoc ) : void

Handle a right click event in a column header.

OnHandleCreated ( EventArgs e ) : void

OnParentVisibleChanged ( EventArgs e ) : void
WndProc ( Message &m ) : void

Override of WndProc to handle the context menu or column resize on column headers. Necessary because ListView eats almost all mouse events, and does not provide any that can be used to handling right clicks in the header. Also couldn't use class wizard to handle WM_NOTIFY because it won't add HDN_ITEMCLICKA and HDN_DIVIDERDBLCLICKW

Private Methods

Méthode Description
DhListView_DrawColumnHeader ( object sender, DrawListViewColumnHeaderEventArgs e ) : void
GetArrowBitmap ( ArrowType type, ArrowSize size ) : Bitmap

Create up/down icon (Adapted from a post by Eddie Velasquez.)

GetColumnIndexFromMousePosition ( Point pt ) : int
HandleColumnClick ( object sender, System.Windows.Forms.ColumnClickEventArgs e ) : void
HandleColumnReordered ( object sender, System.Windows.Forms.ColumnReorderedEventArgs e ) : void
IsThisColumnChangeAllowable ( int columnIndex, int currentWidth, int newWidth ) : bool

Determine if a column width change is acceptable.

ListView_ColumnWidthChanged ( Object sender, System.Windows.Forms.ColumnWidthChangedEventArgs e ) : void
ListView_ColumnWidthChanging ( Object sender, System.Windows.Forms.ColumnWidthChangingEventArgs e ) : void

Reject inappropriate column width changes. Helps to fix FWNX-1018. No column should be so small that compensating for ascending/descending icon size (m_imgList.ImageSize.Width) in DhListView_DrawColumnHeader would result in a negative width.

m_timer_Tick ( object sender, EventArgs e ) : void

Method Details

CheckDisposed() public méthode

Check to see if the object has been disposed. All public Properties and Methods should call this before doing anything else.
public CheckDisposed ( ) : void
Résultat void

DhListView() public méthode

Create one and set the browse view it belongs to.
public DhListView ( BrowseViewer bv ) : System
bv BrowseViewer
Résultat System

Dispose() protected méthode

Releases the unmanaged resources used by the T:System.Windows.Forms.ListView and optionally releases the managed resources.
protected Dispose ( bool disposing ) : void
disposing bool true to release both managed and unmanaged resources; false to release only unmanaged resources.
Résultat void

OnColumnRightClick() protected méthode

Handle a right click event in a column header.
protected OnColumnRightClick ( int iItem, Point ptLoc ) : void
iItem int The i item.
ptLoc Point The pt loc.
Résultat void

OnHandleCreated() protected méthode

protected OnHandleCreated ( EventArgs e ) : void
e System.EventArgs An that contains the event data.
Résultat void

OnParentVisibleChanged() protected méthode

protected OnParentVisibleChanged ( EventArgs e ) : void
e System.EventArgs
Résultat void

ShowHeaderIcon() public méthode

Set the header icon. (Thanks to a post by Eddie Velasquez.)
public ShowHeaderIcon ( int columnIndex, SortOrder sortOrder, ArrowSize size ) : void
columnIndex int Index of the column.
sortOrder SortOrder The sort order.
size ArrowSize The size.
Résultat void

WndProc() protected méthode

Override of WndProc to handle the context menu or column resize on column headers. Necessary because ListView eats almost all mouse events, and does not provide any that can be used to handling right clicks in the header. Also couldn't use class wizard to handle WM_NOTIFY because it won't add HDN_ITEMCLICKA and HDN_DIVIDERDBLCLICKW
protected WndProc ( Message &m ) : void
m System.Windows.Forms.Message The Windows Message to process
Résultat void