DevExpress WPF中文教程:Grid - 如何移動和調整列大小?(一)

DevExpress WPF擁有120+個控件和庫,將幫助您交付滿足甚至超出企業需求的高性能業務應用程序。通過DevExpress WPF能創建有著強大互動功能的XAML基礎應用程序,這些應用程序專注于當代客戶的需求和構建未來新一代支持觸摸的解決方案。 無論是Office辦公軟件的衍伸產品,還是以數據為中心的商業智能產品,都能通過DevExpress WPF控件來實現。

獲取DevExpress WPF v24.1正式版下載

鍵盤導航和屏幕閱讀器增強

如果DataViewBase.ShowColumnHeaders屬性設置為true,GridControl將顯示列標題。

DevExpress WPF 中文教程圖集

移動列

GridControl按照存儲在GridControl.Columns集合中的順序顯示列。

Xaml

<dxg:GridControl Name="grid">
<dxg:GridControl.Columns>
<dxg:GridColumn FieldName="GroupName"/>
<dxg:GridColumn FieldName="FullName"/>
<dxg:GridColumn FieldName="BirthDate"/>
<dxg:GridColumn FieldName="JobTitle"/>
<dxg:GridColumn FieldName="CountryRegionName"/>
<dxg:GridColumn FieldName="Phone" />
</dxg:GridControl.Columns>
<dxg:GridControl.View>
<dxg:TableView Name="view"/>
</dxg:GridControl.View>
</dxg:GridControl>

您可以使用BaseColumn.VisibleIndex屬性來指定列的順序。

在UI中

如果DataViewBase.AllowColumnMoving屬性值為true時,用戶可以拖放列標題。

DevExpress WPF 中文教程圖集

列的BaseColumn.AllowMoving屬性優先于DataViewBase.AllowColumnMoving屬性,可以使用此屬性將列保持在特定位置。

用戶還可以使用列選擇器移動列:

DevExpress WPF 中文教程圖集

在代碼中

要在代碼中移動列,請使用DataViewBase.MoveColumnTo方法。

C#

grid.View.MoveColumnTo(grid.Columns["GroupName"], 2,
HeaderPresenterType.Headers,
HeaderPresenterType.Headers,
MergeGroupPosition.Right);

VB.NET

grid.View.MoveColumnTo(grid.Columns("GroupName"), 2,
HeaderPresenterType.Headers,
HeaderPresenterType.Headers,
MergeGroupPosition.Right)
調整列的大小
在UI中

如果TableView.AllowResizing?/?TreeListView.AllowResizing屬性值為true時,用戶可以拖動頁眉邊沿。

DevExpress WPF 中文教程圖集

列的BaseColumn.AllowResizing屬性優先于TableView.AllowResizing?/?TreeListView.AllowResizing屬性。

在代碼中

要在代碼中調整列的大小,請指定BaseColumn.Width屬性。

絕對列大小

設置BaseColumn.Width屬性為像素值:

Xaml

<dxg:GridControl.Columns>
<dxg:GridColumn FieldName="GroupName" Width="50"/>
<dxg:GridColumn FieldName="FullName" Width="150"/>
<dxg:GridColumn FieldName="BirthDate" Width="100"/>
<dxg:GridColumn FieldName="JobTitle" Width="150"/>
<dxg:GridColumn FieldName="CountryRegionName" Width="100"/>
<dxg:GridColumn FieldName="Phone" Width="100"/>
</dxg:GridControl.Columns>

相對(星號)列的大小

將BaseColumn.Width屬性設置為可用空間的加權比例,可用空間分布在列之間,類似于Microsoft Data Grid中的“星型大小”機制。

XAML

<dxg:GridControl.Columns>
<dxg:GridColumn FieldName="GroupName" Width="*"/>
<dxg:GridColumn FieldName="FullName" Width="3*"/>
<dxg:GridColumn FieldName="BirthDate" Width="2*"/>
<dxg:GridColumn FieldName="JobTitle" Width="3*"/>
<dxg:GridColumn FieldName="CountryRegionName" Width="2*"/>
<dxg:GridColumn FieldName="Phone" Width="2*"/>
</dxg:GridControl.Columns>

注意

  • 當GridControl的寬度設置為無限大時,相對大小不起作用(例如,網格被放置在水平方向的堆棧面板中)。
  • 相對大小在列帶中不起作用。

自動列大小(自動最佳匹配)

將列的BaseColumn.Width屬性設置為Auto,使GridControl根據列的內容自動重新計算該列的最佳寬度:

Xaml

<dxg:GridControl.Columns>
<dxg:GridColumn FieldName="GroupName" Width="*"/>
<dxg:GridColumn FieldName="FullName" Width="3*"/>
<dxg:GridColumn FieldName="BirthDate" Width="2*"/>
<dxg:GridColumn FieldName="JobTitle" Width="Auto" AllowResizing="False"/> <!-- this column has Auto size -->
<dxg:GridColumn FieldName="CountryRegionName" Width="2*"/>
<dxg:GridColumn FieldName="Phone" Width="2*"/>
</dxg:GridControl.Columns>

當用戶更改列的寬度時,GridControl停止重新計算該列的最佳寬度,將BBaseColumn.AllowResizing性設置為false來禁止用戶調整列的大小。

注意:如果TableView.AutoWidth?/?TreeListView.AutoWidth屬性值為true,不要將列的寬度設置為Auto。

未完待續,更多精彩內容我們下期見......

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/62709.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/62709.shtml
英文地址,請注明出處:http://en.pswp.cn/web/62709.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Matlab筆記---clear、clc、clear all應用

在MATLAB中&#xff0c;clear、clc 和 clear all 是三個常用的命令&#xff0c;它們各自有不同的作用&#xff1a; clc&#xff1a; clc 命令用于清除MATLAB命令窗口中的所有輸出。它不會刪除任何變量、函數或文件&#xff0c;只是清除屏幕上的顯示內容&#xff0c;讓你可以更…

銘記一次項目重大事故

在程序的世界里&#xff0c;bug 就像隱藏在暗處的小怪獸&#xff0c;時不時跳出來搗亂。而職業生涯中&#xff0c;總有那么一個或幾個 bug 讓我們刻骨銘心。它或許讓項目差點夭折&#xff0c;或許讓你熬了無數個通宵&#xff0c;或許有著離奇的出現方式和曲折的解決過程。無論是…

Qt 一個簡單的QChart 繪圖

Qt 一個簡單的QChart 繪圖 先上程序運行結果圖&#xff1a; “sample9_1QChart.h” 文件代碼如下&#xff1a; #pragma once#include <QtWidgets/QMainWindow> #include "ui_sample9_1QChart.h"#include <QtCharts> //必須這么設置 QT_CHARTS_USE_NAME…

分布式事物XA、BASE、TCC、SAGA、AT

分布式事務——Seata 一、Seata的架構&#xff1a; 1、什么是Seata&#xff1a; 它是一款分布式事務解決方案。官網查看&#xff1a;Seata 2.執行過程 在分布式事務中&#xff0c;會有一個入口方法去調用各個微服務&#xff0c;每一個微服務都有一個分支事務&#xff0c;因…

MySQL為什么使用B+樹來作索引

我來詳細解釋一下B樹的結構和特點。 graph TDA[根節點 40|70] --> B[20|30]A --> C[50|60]A --> D[80|90]B --> E[10|15]B --> F[25|28]B --> G[35|38]C --> H[45|48]C --> I[55|58]C --> J[65|68]D --> K[75|78]D --> L[85|88]D --> M[9…

python 下載 b站視頻 和音頻

video_bvid&#xff1a; import os import requests import json import re from bs4 import BeautifulSoup import subprocess # from detail_video import video_bvid# video_bvid 是一個從外部得到的單個視頻ID video_bvid BV1cx421Q7veclass BilibiliVideoAudio:def __in…

2024年06月中國電子學會青少年軟件編程(Python)等級考試試卷(五級)答案 + 解析

青少年軟件編程(python)等級考試試卷(五級) 一、單選題(共25題,共50分) range()函數的基本用法是什么?( ) A. 生成一個等差數列 B. 生成一個隨機數列 C. 生成一個遞增數列 D. 生成一個遞減數列 正確答案:A 答案解析:range() 函數用于生成一個等差數列,其中起始值、…

以太網鏈路詳情

文章目錄 1、交換機1、常見的概念1、沖突域2、廣播域3、以太網卡1、以太網卡幀 4、mac地址1、mac地址表示2、mac地址分類3、mac地址轉換為二進制 2、交換機的工作原理1、mac地址表2、交換機三種數據幀處理行為3、為什么會泛洪4、轉發5、丟棄 3、mac表怎么獲得4、同網段數據通信…

Shell編程 腳本的運行方式與注釋

目錄 shell腳本的運行方式 1. 路徑運行 2.bash或sh加腳本運行 ?編輯 3.source在加腳本路徑運行 shell腳本注釋 單行注釋 多行注釋 shell腳本的運行方式 我們在/usr/etc/demo01目錄下新建了一個腳本 a.sh &#xff0c;腳本內容是要求輸出數字1&#xff0c;怎么運行呢 1…

獲取淘寶商品評論數據的API應用:市場調研|產品更新|用戶數據

下面是一段我用item_review&#xff08;獲取商品評論數據&#xff09;抓來的商品評論數據&#xff1a; "items": {"total_results": 375,"totalpage": 38,"page_size": 10,"page": "1","item": [{&quo…

智算網絡中Scale-out和Scale-up網絡的技術原理

智算網絡中Scale-out網絡和Scale-up網絡的本質區別是什么&#xff1f; 一、什么是智算中心的Scale-out網絡和Scale-up網絡 數據中心網絡總體上可分為兩大類&#xff1a;通算網絡和智算網絡。通算網絡主要用于支持傳統的計算任務和應用&#xff0c;如企業的IT系統、網站托管、電…

HCIA筆記7--OSPF協議入門

文章目錄 0. 路由分類1. OSPF介紹1.1 概念1.2 報文類型 2. 鄰接關系的建立2.1 鄰居關系的建立2.2 鄰接關系的形成2.3 ospf狀態機 3. DR與BDR3.1 為什么要有DR和BDR&#xff1f;3.2 DR和BDR的選舉原則 4. ospf的配置4.1 內部優先級 5. 問題5.1 三層環路如何解決&#xff1f; Ref…

C05S06-Nginx的內置變量和代理

一、常見內置變量 內置變量說明$uri請求的URL&#xff0c;不包括主機和參數$request_uri請求的URL&#xff0c;包括主機和參數$host請求的主機名$http_user_agent客戶端信息&#xff0c;瀏覽器和操作系統$remote_addr客戶端IP地址$remote_port客戶端端口$server_addr服務端IP地…

mysql排序問題

mysql 建數據庫時&#xff0c;需要指定 字符集 和 排序規則 建表時&#xff0c;也可以指定 也可以指定具體的字段 安照下面的sql順序執行插入&#xff0c;它們的排序是什么樣的&#xff1f; INSERT into test_sort (uid,create_time) VALUE (d,now()) INSERT into test_sort (u…

JAVA 圖形界面編程 AWT篇(1)

前言 為了應對JAVA課設&#xff0c;小編走上了java的圖形界面編程的道路&#xff0c;通過博客分享自己的學習歷程&#xff0c;并進行筆記的記錄。 AWT&#xff08;Abstract Window Toolkit&#xff09;介紹 AWT&#xff08;抽象窗口工具包&#xff09;是 Java 最早的圖形用戶界…

vulhub復現CVE-2021-44228log4j漏洞

目錄 一&#xff1a;漏洞概述 二&#xff1a;漏洞原理 三&#xff1a;漏洞利用 lookup功能&#xff1a; JNDI解析器&#xff1a; ldap服務&#xff1a; RMI&#xff1a; 四&#xff1a;漏洞復現 4.1靶場 4.2dnslog測試 4.3部署jndi-injection-exploit 4.4打開監聽端口 4.5觸發請…

ip地址獲取失敗啥意思?ip地址獲取失敗怎么回事

在日常的網絡使用中&#xff0c;我們時常依賴于穩定的IP地址來確保數據的順暢傳輸和設備的正常識別。然而&#xff0c;有時我們會遇到“IP地址獲取失敗”的困擾&#xff0c;這不僅阻礙了我們的網絡訪問&#xff0c;還可能帶來一系列的網絡連接問題。那么&#xff0c;IP地址獲取…

如何在 Android 項目中實現跨庫傳值

背景介紹 在一個復雜的 Android 項目中&#xff0c;我們通常會有多個庫&#xff08;lib&#xff09;&#xff0c;而主應用程序&#xff08;app&#xff09;依賴所有這些庫。目前遇到的問題是&#xff0c;在這些庫中&#xff0c;libAd 需要獲取 libVip 的 VIP 等級狀態&#xf…

非常規使用client-go踩坑記

0x01 背景 編程者總有想偷懶的傾向。至少我的初衷時&#xff0c;盡量復用現有的代碼。但有時也會變得弄巧成拙。 這不&#xff0c;最近需要在一個Go服務里添加一個CRD的緩存等待。熟悉k8s的同學都知道&#xff0c;向 kube-apiserver 提交一個更新&#xff0c;到同一個進程中的…

OpenGL ES詳解——多個紋理實現混疊顯示

目錄 一、獲取圖片紋理數據 二、著色器編寫 1. 頂點著色器 2. 片元著色器 三、綁定和繪制紋理 1. 綁定紋理 2. 繪制紋理 四、源碼下載 一、獲取圖片紋理數據 獲取圖片紋理數據代碼如下&#xff1a; //獲取圖片1紋理數據 mTextureId loadTexture(mContext, R.mipmap.…