/// <summary>
        /// Makes the column header and the cell style right aligned.
        /// </summary>
        /// <param name="col">The column.</param>
        /// <param name="headerStyleKey">
        /// The key of the style to apply to the header, or null to use <see cref="DataGrid.ColumnHeaderRightStyleKey"/>
        /// </param>
        /// <param name="cellStyleKey">
        /// The key of the style to apply to the cells, or null to use <see cref="DataGrid.DataGridCellRightStyleKey"/>
        /// </param>
        /// <returns>The column.</returns>
        public static DataGridColumn MakeRightAligned(this DataGridColumn col, object headerStyleKey = null, object cellStyleKey = null)
        {
            Style headerStyle = (Style)Application.Current.TryFindResource(headerStyleKey ?? DataGrid.ColumnHeaderRightStyleKey);
            Style cellStyle   = (Style)Application.Current.TryFindResource(cellStyleKey ?? DataGrid.DataGridCellRightStyleKey);

            return(col.AddHeaderStyle(headerStyle).AddCellStyle(cellStyle));
        }
        /// <summary>
        /// Makes the column header centered.
        /// </summary>
        /// <param name="col">The column.</param>
        /// <param name="headerStyleKey">
        /// The key of the style to apply to the header, or null to use <see cref="DataGrid.ColumnHeaderCenteredStyleKey"/>
        /// </param>
        /// <returns>The column.</returns>
        public static DataGridColumn MakeHeaderCentered(this DataGridColumn col, object headerStyleKey = null)
        {
            Style headerStyle = (Style)Application.Current.TryFindResource(headerStyleKey ?? DataGrid.ColumnHeaderCenteredStyleKey);

            return(col.AddHeaderStyle(headerStyle));
        }