2010-07-01 38 views
6

Tôi đang cố gắng lấy nút để hiển thị biểu tượng trong XAML. Ban đầu tôi muốn dán một nhân vật thay vào đó, nhưng vb Express 2008 sẽ không nhận ra nó là một biểu tượng vì nó không phải là một nhân vật thông thường. Sau đó, tôi tạo ra một biểu tượng và cố gắng thiết lập các thuộc tính hình ảnh nút để tham khảo nó, nhưng điều này không tồn tại, do đó, nhiều đau khổ. Bây giờ tôi đã sử dụng tài nguyên dự án để thêm tệp biểu tượng mà nó đã đẩy vào thư mục tài nguyên dự án.Cách tham chiếu tham chiếu tệp tài nguyên biểu tượng trong XAML

Những gì tôi muốn làm là sử dụng XAML để hiển thị các biểu tượng, trong thẻ này:

<Button> 
<Image Source="{StaticResource UpArrow}"/> 
</Button> 

Tôi lý tưởng muốn có hình ảnh trong một file riêng biệt và tham khảo nó bằng dự án. Tôi hơi bối rối bởi vấn đề nội dung/tài nguyên.

tôi đã cố gắng để truy cập nó bằng cách sử:

<UserControl.Resources> 
<BitmapImage x:Key="UpArrow" _ 
    UriSource="Resources/_25B2_Triangle__black__up_pointing.ico" /> 
</UserControl.Resources> 

Tôi đã đọc một số nội dung về lắp ráp gói đó là khổng lồ và khó hiểu. Chắc chắn, việc đặt một biểu tượng vào tệp tài nguyên sẽ giúp dễ tham khảo bằng cách sử dụng/Tài nguyên hoặc tương tự, thay vì đường dẫn tệp tuyệt đối, nếu không, điểm của nó là gì?

Tôi muốn làm tất cả trong XAML chứ không phải là code-behind bởi vì sau đó công việc này tất cả sẽ được thực hiện bởi khách hàng, nhưng có lẽ tôi không undestanding khi sử dụng mã phía sau. Với WPF, có rất ít bằng văn bản về những gì bạn đang cố gắng làm ở quy mô lớn và lý do tại sao bạn muốn làm điều đó, ngoài MS liên tục kiềm chế như thế nào 'mát' nó được, -which không phải là rất hữu ích.

Cảm ơn ..

Trả lời

8

Cách dễ nhất để làm điều này là:

<Button> 
<Image Source="Resources/_25B2_Triangle__black__up_pointing.ico"/> 
</Button> 

Điều quan trọng cần nhớ là để đảm bảo rằng tập tin biểu tượng của bạn được công nhận là một tài nguyên có giá trị ứng dụng của bạn. Với WPF, bạn cần thực hiện thêm một bước nữa so với cách làm cũ của winform.

Trong Solution Explorer của bạn, mở rộng thư mục 'Tài nguyên', sau đó nhấp vào tệp "_25B2_Triangle_black_up_pointing.ico". Sau đó nhấn F4 cho các thuộc tính. Đảm bảo rằng thuộc tính 'Xây dựng Hành động' được đặt thành 'Tài nguyên'.

+0

Cảm ơn rất nhiều, hoạt động hoàn hảo, ngoài một chút chỉnh sửa cần thiết khi một số thằng ngốc quyết định đặt dấu phẩy vào tên tệp, vb.net chuyển đổi thành dấu gạch dưới kép/ngược lại. Build Action là một phần quan trọng! Chỉ mới phát hiện câu trả lời, vì thông báo dường như đã bị treo. – user326775

Các vấn đề liên quan