Thay đổi thuộc tính trường mặc định cho định dạng số trong ArcMap?


8

Bất cứ ai đã làm việc với các số có hơn 14 chữ số đều có thói quen tuyệt vời của ArcMap là chuyển đổi bất kỳ số nào có độ dài như vậy sang ký hiệu điện tử. Mặc dù thay đổi, đây là một vấn đề đơn giản để đi vào Thuộc tính Trường và đặt định dạng số, thực hiện việc này lặp đi lặp lại cho mọi trường trong mỗi bảng sẽ trở nên mệt mỏi. Có một số cài đặt hoặc phương thức môi trường bí mật để làm cho các định dạng số mặc định thành một cái gì đó ngoài "Số" không?


Bạn đang tìm kiếm một giải pháp lập trình ?
Kirk Kuykendall

Tôi chỉ đang tìm kiếm một giải pháp-. Tuy nhiên, rất có thể một ArcObjects nằm ngoài phạm vi của tôi, trừ khi đó là AddIn đã được xây dựng.
Nathanus

@Kirk Sau khi đào sâu vào ArcObjects một chút trong tuần qua, có vẻ như giao diện INumberFormat chỉ hữu ích để thay đổi cách hiển thị trường khi bạn sử dụng valuetostringstringtovaluephương thức. Đây có phải là trường hợp không, hay nó sẽ thực sự điều chỉnh cách nhìn trong bảng trong ArcMap?
Nathanus

Xin lỗi, bạn có thể truyền nó tới INumericFormat .
Kirk Kuykendall

Đây thường là giới hạn cơ sở dữ liệu (15) và không dành riêng cho ArcGIS, đặt nó sang một bên, đó là một Short, Long, Double hay Float?
CDBrown

Câu trả lời:


4

Theo như tôi có thể nói, câu trả lời là không, người ta không thể đặt định dạng số mặc định, không phải không có lập trình (và người ta sẽ bắt đầu với INumericFormat như Kirk đã lưu ý. Xem ví dụ về Định dạng góc và tỷ lệ tiền tệ góc thập phân ) .

Ngoài ra, thuộc tính hiển thị số được lưu trữ trong bản đồ (.mxd) hoặc tệp lớp (.lyr) và không phải là thuộc tính nếu chính bảng đó, vì vậy mọi thay đổi được thực hiện tương tác hoặc thông qua lập trình như trên sẽ không áp dụng cho dữ liệu mới. Thay đổi loại số trường tại thời điểm tạo thành nhân đôi, thả nổi, v.v. sẽ không giúp ích gì cho cùng một lý do (đó không phải là thuộc tính của trường hoặc bảng).

Có lẽ điều này có nghĩa là cách duy nhất chuyển tiếp là hy vọng ai đó xây dựng và chia sẻ nút "thay đổi định dạng số cho tất cả các lớp đã chọn" trong Arcmap và / hoặc gửi yêu cầu tính năng lên http://ideas.arcgis.com và hy vọng các quyền hạn đó được quyết định giá trị thực hiện như một sở thích của người dùng.


2

Tôi tìm thấy giải pháp tiếp theo:

Carto.FeatureLayerlớp thực hiện Geodatabase.ITableFieldsGeodatabase.ILayerFieldsgiao diện. Thông qua một trong hai giao diện này, bạn có thể truy cập FieldInfoloại thuộc tính Geodatabase.IFieldInfo. Sau đó sử dụng IFieldInfo.NumberFormattài sản.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.