‫Chào mừng trở lại.
‫Trong video này, chúng ta sẽ xem xét các nhiệm vụ và cụ thể khi làm việc với DWP.
‫Do đó, hãy tạo một dự án mới và sử dụng WP F ở đây và tôi sẽ gọi nó là WP F task và EE trong trường
‫hợp của tôi.
‫Sau đó, hãy nhấn OC để tạo dự án đó và trong giao diện người dùng của tôi bây giờ hãy thêm một nút và tôi sẽ làm điều đó thông qua
‫hộp công cụ.
‫Vì vậy, tôi sẽ chỉ chọn một nút và kéo nó vào giao diện người dùng của mình.
‫Vì vậy, chúng tôi ở đây.
‫Tôi sẽ làm cho nó lớn hơn một chút và hãy thay đổi kích thước phông chữ thành 32, có thể tương tự như vậy.
‫Bây giờ nó dễ đọc hơn một chút và tôi sẽ đặt tên cho nó.
‫Tên bằng với nút của tôi vì tôi muốn sử dụng nó sau này trong mã phía sau của mình.
‫Được rồi.
‫Vì vậy, đó là giao diện người dùng.
‫Hiện tại, chúng tôi sẽ thêm một chút trình duyệt Web sau này, nhưng hiện tại, nút này
‫sẽ ổn.
‫Và trong cửa sổ chính của tôi, tôi muốn sử dụng nút đó, nhưng tôi cần một sự kiện nhấp chuột, do đó.
‫Vì vậy, bất cứ khi nào ai đó nhấp vào nút đó, tôi muốn tải xuống thứ gì đó
‫từ web và sau khi tải xong, tôi muốn gán HTML cho văn bản nút hoặc cho nội dung nút và do đó tôi cần một sự kiện
‫nhấp chuột.
‫Vì vậy, tôi sẽ nhấp đúp vào nút và nó sẽ tạo ra một sự kiện nhấp vào nút mới của tôi ở đây.
‫Vì vậy, phương pháp này sẽ được kích hoạt bất cứ khi nào chúng ta nhấp vào nút.
‫Và cách dễ nhất để xem điều đó có đúng không là chỉ cần sử dụng một hộp tin nhắn và chỉ cần nói điều gì đó như Xin chào hoặc điều đó đã
‫hoạt động hoặc điều gì đó tương tự.
‫Bây giờ chúng ta hãy chạy nó chỉ để xem liệu mã của chúng ta có thực sự hoạt động hay không.
‫Bởi vì trước khi chúng ta làm bất cứ điều gì khác, chúng ta hãy chỉ xem liệu Nút có hoạt động hay không và nó nói xin chào.
‫Được rồi, tốt thôi.
‫Bây giờ, như bạn có thể thấy, bản thân văn bản không thực sự lớn như văn bản nút.
‫Nó không đẹp.
‫Nhưng đó không phải là những gì video này nói về.
‫Đúng?
‫Đó là về các tác vụ và về việc tải xuống một thứ gì đó trong nền trong khi giao diện người dùng không bị kẹt.
‫Được rồi, chúng ta hãy tìm cách làm cho nó bị kẹt.
‫Vì vậy, hãy tiếp tục và thử một cái gì đó như tải xuống.
‫Và để tải xuống thứ gì đó, tôi sẽ sử dụng một ứng dụng khách HTTP và tôi sẽ gọi một ứng dụng khách
‫web.
‫Bây giờ, HTTP client là một lớp mà chúng ta phải thêm hệ thống dot net, dot, http.
‫Đó là những gì chúng ta cần ở đây.
‫Vì vậy, ứng dụng khách web này bây giờ, nó sẽ là một ứng dụng khách HTTP mới và bây giờ tôi
‫muốn có một chuỗi sẽ là HTML, sẽ là ứng dụng khách web dot get string async và chuỗi nào sẽ hoạt động tốt, nó
‫sẽ nhận được https .
‫Dấu hai chấm về phía trước gạch chéo về phía trước gạch chéo google dot com.
‫Và tôi muốn có kết quả của điều đó.
‫Vì vậy, hãy tải xuống trang web và cung cấp cho tôi kết quả và lưu trữ nó trong HTML.
‫Vì vậy, đó là những gì điều này sẽ làm.
‫Đúng.
‫Và những gì tôi sẽ thấy là chủ đề mà tôi đang ở trên.
‫Vì vậy, tôi muốn xem chuỗi mà tôi đang làm việc.
‫Dòng bên phải sẽ là số luồng và dấu chấm của luồng.
‫Và để sử dụng thread, chúng ta cần phải.
‫Sử dụng luồng hệ thống và để sử dụng gỡ lỗi, chúng tôi cần sử dụng chẩn đoán hệ thống.
‫Vì vậy, hãy làm hai điều đó và bây giờ chúng ta có thể tiếp tục và lấy luồng hiện tại và ID luồng được quản
‫lý.
‫Vì vậy, tôi chỉ muốn biết luồng có ID nào mà tôi hiện đang chạy?
‫Vì vậy, khi tôi nhấp vào nút, gỡ lỗi này sẽ được in và nó sẽ tải xuống một thứ gì đó.
‫Bây giờ, giả sử tôi muốn thay đổi nội dung nút để nút của tôi có nội dung giống như đã xong.
‫Vì vậy, hãy kiểm tra điều đó.
‫Đây rồi.
‫Sau khi tôi nhấp vào nút, bạn có thể thấy bây giờ nó đã hoàn tất, tải xuống và nó đã hoàn tất.
‫Và điều đó xảy ra bởi vì cái này ở đây.
‫Vì vậy, tải xuống Google. com thực sự hoạt động khá nhanh và đó là lý do tại sao thậm chí có thể
‫hoàn thành nội dung như nhau.
‫Nhưng thường thì điều đó không thể xảy ra hoặc trong hầu hết các trường hợp là không thể vì nhiệm vụ này ở đây thường
‫mất khá nhiều thời gian.
‫Và chúng tôi có một chủ đề ở đây khá, khá nặng vì tải xuống nội dung thường mất một lúc và ngoại trừ rất rất
‫ít mà chúng tôi thực sự tải xuống trong trường hợp này, chúng tôi chỉ
‫tải xuống một trang web Google dot com, rất rất , rất ngắn.
‫Nó chỉ là một vài kilobyte.
‫Vì vậy, thay vào đó, tôi sẽ không tải xuống tệp 5 megabyte.
‫Vì vậy, nó sẽ lâu hơn một chút cho đến khi tất cả những điều đó được hoàn thành.
‫Vì vậy, chúng ta hãy kiểm tra nó một lần nữa.
‫Tôi sẽ nhấn nút và bây giờ bạn thấy nó bị đóng băng.
‫Và chỉ một khi nó được thực hiện, nó đã thay đổi thành xong.
‫Vì vậy, có thể tệp 25 megabyte là quá nhỏ.
‫Hãy tạo tệp 200 megabyte.
‫Hãy để tôi thực sự kiểm tra xem có một trên trang web và có một.
‫Được rồi, hãy thử lại lần nữa.
‫Bây giờ, tệp sẽ lớn hơn rất nhiều và sẽ mất khá nhiều thời gian để hoàn thành.
‫Vì vậy, tôi đang nhấn vào nút và như bạn có thể thấy bây giờ, nó bị đóng băng, nó bị đóng băng và nó không có bất
‫cứ thứ gì cho đến khi quá trình tải xuống hoàn tất.
‫Và đó là bởi vì chúng tôi đang ở trên thứ ba.
‫Vì vậy, toàn bộ màn hình bị đóng băng cho đến khi quá trình tải xuống hoàn tất và đó là điều rất nguy hiểm.
‫Bạn không nên làm điều đó.
‫Bạn phải luôn cẩn thận khi thực hiện những công việc nặng trên chuỗi chính hoặc trên chuỗi giao diện người dùng vì chuỗi
‫chính hoặc chuỗi giao diện người dùng thực sự bận rộn với việc cập nhật giao diện người dùng.
‫Vì vậy, nó thực hiện tất cả các nội dung giao diện người dùng và bây giờ tệp của tôi hoặc chương trình của tôi bị đóng băng.
‫Khá nhiều.
‫Vì vậy, tôi sẽ chỉ sử dụng một tệp 200 megabyte.
‫Có lẽ đó là một lựa chọn tốt hơn và điều đó sẽ được thực hiện và chúng ta vẫn sẽ thấy sự khác biệt.
‫Đúng.
‫Vì vậy, tôi vừa sử dụng ở đây một liên kết nơi bạn có thể chỉ cần chạy hoặc tải xuống các tệp ngẫu nhiên.
‫Vì vậy, chúng ta hãy nhấn nó một lần nữa.
‫Như bạn có thể thấy bây giờ nó đã bị đóng băng và sẽ mất một chút thời gian cho đến khi hoàn thành.
‫Và bạn đây.
‫Xong rôi.
‫Vậy là đã tải tệp xuống và hoàn tất.
‫Được chứ.
‫Và những gì bạn cũng thấy là chúng tôi đang chạy trên luồng số một.
‫Vì vậy, đó là chủ đề chính, phải không?
‫Và chúng tôi đang chạy trên chuỗi chính và chúng tôi đang cố tải xuống một thứ gì đó và chúng tôi đang cố cập
‫nhật giao diện người dùng và tốt, đó là lý do tại sao phải mất một chút thời gian ở đây.
‫Vì vậy, bây giờ bạn có thể nói, được rồi, hãy tạo một nhiệm vụ để làm điều đó.
‫Vì vậy, hãy tạo một tác vụ chạy và chúng ta sẽ chạy một số mã ở đây.
‫Vì vậy, tôi sẽ sao chép mã đó vào đó như vậy.
‫Và bây giờ chúng ta hãy gỡ lỗi đó.
‫Vì vậy, chúng ta hãy thêm một điểm gỡ lỗi nhỏ ở đây.
‫Vì vậy, chúng ta hãy tiếp tục và gỡ lỗi đó chỉ để xem các chủ đề nào thực sự liên quan.
‫Vì vậy, tôi sẽ nhấn nút và sau đó chúng ta đang ở bên trong chuỗi này.
‫Và chúng tôi ở đó.
‫Vì vậy, chúng tôi có một số chủ đề công nhân.
‫Chúng tôi có chuỗi chính, là một chuỗi và chúng tôi đã thấy điều đó trước đó khi chúng tôi thực thi một cái gì đó.
‫Vì vậy, chúng ta có luồng chính và sau đó chúng ta chạy tác vụ của mình, cũng có một luồng và chúng ta đang ở trong luồng
‫năm.
‫Vì vậy, bạn có thể thấy luồng năm là một luồng công nhân và đó là luồng mà chúng ta có ở đây.
‫Vì vậy, chúng ta hãy chuyển sang bước tiếp theo.
‫Chúng tôi vẫn đang ở, ừm, thực hiện hoặc vẫn ở luồng năm.
‫Sau đó, chúng ta hãy làm điều đó một lần nữa.
‫Vẫn là một chủ đề năm.
‫Và bây giờ chúng tôi đang cố gắng làm điều gì đó.
‫Vì vậy, chúng tôi đang cố gắng cập nhật nút của tôi.
‫Xong.
‫Và chúng ta hãy chuyển sang bước tiếp theo một lần nữa.
‫Và như bạn có thể thấy, ứng dụng của tôi bị đóng băng.
‫Đó là đánh giá biểu hiện, nút của tôi.
‫Vì vậy, chúng tôi đang chờ đợi một lần nữa.
‫Vì vậy, khá hạnh phúc cho nó.
‫Và như bạn có thể thấy, thưa bà, rằng chúng tôi đang ở trong Chiến dịch Ngoại lệ.
‫Luồng đang gọi không thể truy cập đối tượng vì một luồng khác sở hữu nó.
‫Điều đó nghĩa là gì?
‫Điều đó có nghĩa là nút của tôi thuộc sở hữu của một chủ đề khác.
‫Và theo chủ đề nào.
‫Nó thuộc sở hữu của chuỗi giao diện người dùng, là chủ đề chính của chúng tôi.
‫Vì vậy, luồng chính chịu trách nhiệm chăm sóc tất cả các phần tử giao diện người dùng để chúng không bị đóng băng.
‫Điều quan trọng là giao diện người dùng luôn phản hồi và trong trường hợp này, nó không phản hồi nữa
‫vì chúng tôi đang cố gắng truy cập dòng mã này mặc dù nó không ở đúng luồng.
‫Vì vậy, chúng tôi đang ở trong chuỗi năm và chúng tôi đang cố gắng truy cập một cái gì đó thuộc chuỗi một và đó là một cái
‫gì đó không hợp lệ.
‫Vì vậy, chúng tôi nhận được ngoại lệ hoạt động không hợp lệ này ở đây và chúng tôi cần tìm một giải pháp khác để quản lý điều đó.
‫Và nó thường là một khái niệm về các chủ đề khác nhau.
‫Vì vậy, nói chung bạn phải cẩn thận khi làm việc với các luồng khác nhau và với các đối tượng khác nhau.
‫Nếu các đối tượng thuộc sở hữu của các chủ đề khác, bạn không thể thay đổi chúng hoặc sửa đổi chúng.
‫Vì vậy, đó là điều mà bạn phải lưu ý.
‫Vì vậy, làm thế nào chúng ta có thể làm điều đó?
‫Nói chung, chúng ta hãy dừng ứng dụng trước và hãy chuyển sang nút.
‫Do đó, tôi tạo một nút ở đây và tôi muốn kiểm tra nút.
‫Vì vậy, tôi đang nhấn điều khiển hoặc giữ điều khiển và nhấn vào nút.
‫Vì vậy, một nút kế thừa từ cơ sở nút, là một điều khiển nội dung kế thừa từ điều khiển, từ phần
‫tử khung từ phần tử giao diện người dùng.
‫Đó là một đối tượng trực quan, nào là một đối tượng phụ thuộc, đối tượng điều phối và chúng ta là một
‫đối tượng điều phối viên.
‫Và ở đây nó chỉ kiểm tra quyền truy cập và xác minh trục X.
‫Vì vậy, đây là một đối tượng người điều phối và chúng tôi đang sử dụng một người điều phối ở đây và người điều phối có rất nhiều
‫biến, sự kiện, v.v.
‫Tại sao tôi cho bạn thấy điều đó?
‫Đó là bởi vì chúng tôi sẽ sử dụng điều phối để quản lý chuỗi của chúng tôi cho nút của tôi.
‫Vậy tôi nên làm gì ở đây.
‫Vâng, tôi cần nút của tôi chấm công cụ điều phối để có được trình điều phối luồng cửa sổ đối tượng điều phối chấm
‫phân luồng cửa sổ hệ thống được liên kết với.
‫Vì vậy, bây giờ chúng ta tìm xem chủ đề nào thuộc về nút của chúng ta hoặc thực sự thuộc về chủ đề nào mà nút của chúng ta thuộc về.
‫Vì vậy, hãy kiểm tra điều phối viên và ở đây tôi gọi thực thi hành động được chỉ định một cách không đồng bộ
‫trên luồng mà trình điều phối luồng cửa sổ hệ thống được liên kết với.
‫Vì vậy, đó chính xác là những gì tôi đang nói về, những gì chúng ta cần làm.
‫Vì vậy, hãy tiếp tục và làm điều đó và hãy thực thi mã ở đây ngay bây giờ.
‫Vì vậy, tôi sẽ đóng nó ở dưới cùng ở đó.
‫Và bây giờ bạn có thể thấy, bây giờ tôi có thể tiếp tục và nói, được rồi, nội dung nút của tôi chỉ nói
‫là xong và tôi sẽ sử dụng gỡ lỗi một lần nữa để xem tôi đang ở trong chuỗi nào tại thời điểm này.
‫Vì vậy, hãy chạy lại mã.
‫Bây giờ chúng ta hãy nhấn nút.
‫Và như bạn có thể thấy, chúng tôi đang ở đây ngay bây giờ.
‫Và bây giờ nó cần phải đánh giá tải một lần nữa để chúng ta đang ở trong luồng năm.
‫Bây giờ đây là nơi chúng tôi thực hiện công việc gỡ lỗi.
‫Sau đó, chúng tôi đi đến chủ đề tiếp theo hoặc dòng tiếp theo.
‫Dòng tiếp theo và sau đó là giao diện người dùng đã hoạt động trở lại.
‫Ở đâu?
‫Ở đây.
‫Và bây giờ chúng ta có thể sang bước tiếp theo.
‫Vì vậy, chúng tôi đang ở trong người điều phối và ở đây nó thực sự nhảy qua những gì tôi muốn cho bạn thấy.
‫Vì vậy, chúng ta hãy kiểm tra nó ra.
‫Vào windows và xem bảng điều khiển gỡ lỗi, đây là đầu ra để chúng ta nói luồng số năm và sau
‫đó nó nói luồng số một.
‫Vì vậy, đây là chủ đề số một và đó là chủ đề số năm.
‫Vì vậy, chủ sở hữu của nút, như bạn có thể thấy, là chủ đề số một.
‫Và để làm cho điều đó rõ ràng hơn một chút, chúng tôi có thể thêm điều đó vào dòng của chúng tôi ở đây.
‫Số luồng một hoặc số luồng, tương tự như vậy sở hữu nút của tôi, vì vậy bây giờ chúng ta sẽ rõ ràng hơn một chút.
‫Hãy chạy lại và sau đó nó sẽ hiển thị chính xác.
‫Vì vậy, đây là đầu ra và chưa có gì thú vị.
‫Chúng tôi nhấn nút và bạn thấy chuỗi số năm đã được thực thi và sau đó nó bắt đầu tải xuống.
‫Và một khi nó được hoàn thành, khi nó hoàn thành, nó nói Đây, chủ đề số một sở hữu nút của tôi.
‫Vì vậy, chúng ta hãy nhấn lại.
‫Và bây giờ, như bạn có thể thấy, nút vẫn hoạt động và nó vẫn đang cập nhật.
‫Vậy là tốt rồi.
‫Và đó là một cách để làm điều đó.
‫Tuy nhiên, có một cách khác và tôi sẽ chỉ cho bạn một cách khác, đó là một giải pháp ưu tiên.
‫Vì vậy, tôi sẽ sao chép cái này, bấm vào nút của tôi.
‫Tôi sẽ gọi nó là nút bấm của tôi để nó không gây trở ngại.
‫Và bây giờ tôi sẽ nói tôi đang ở bên ngoài chủ đề nào.
‫Vậy đây là chủ đề nào?
‫Tôi muốn bấm vào nút.
‫Vâng, tôi nên ở trong một màu đỏ sau đó.
‫Tôi sẽ sử dụng một tác vụ chờ chạy và tác vụ đó phải là một tác vụ không đồng bộ.
‫Vì vậy, chúng ta cần thêm từ khóa async vào đây.
‫Bây giờ Visual Studio vẫn không hài lòng lắm, vì vậy tôi cần đặt phương thức này không đồng bộ.
‫Vì vậy, lần nhấp vào nút của tôi bây giờ sẽ là một phương thức nút không đồng bộ sẽ chờ một tác vụ cụ thể
‫chạy không đồng bộ.
‫Và những gì tôi làm ở đây là tôi chỉ cần tải lại tệp này xuống và thay vì sử dụng một trình
‫điều phối, những gì tôi có thể làm bây giờ là tôi thực sự có thể cập nhật nút của mình bên ngoài tác vụ này.
‫Vì vậy, tôi sẽ làm điều đó bên ngoài đây.
‫Tôi sẽ nói nội dung nút của tôi và nó sẽ nói một cái gì đó như Hoàn tất tải xuống.
‫Đó là nó.
‫Vì vậy, bây giờ thay vì làm điều đó với bộ điều phối, đó là một giải pháp nhỏ, tôi làm cho nó không đồng bộ, vì vậy bây
‫giờ nó cũng sẽ hoạt động tốt.
‫Bây giờ, để kiểm tra điều đó, tôi sẽ thay đổi phương thức ở đây để nhấp vào phương thức thành nút nhấp tới.
‫Nếu không, phương thức này sẽ không bao giờ được thực thi.
‫Vì vậy, chúng ta hãy làm điều đó.
‫Và có lẽ chúng ta cũng hãy thêm vào chủ đề nào chúng ta đang có.
‫Vì vậy, số luồng so-and-so trước khi chờ tác vụ.
‫Và sau đó cái này là sau một nhiệm vụ chờ và cái kia sẽ ở trong một nhiệm vụ trọng lượng.
‫Vì vậy, bây giờ chúng ta hãy chạy lại nó.
‫Hãy nhấn nút của chúng tôi.
‫Và ở đây bạn thấy trước nhiệm vụ.
‫Đó là số một.
‫Sau đó, trong một nhiệm vụ trọng lượng là số hai.
‫Và sau nhiệm vụ cân, nó lại ở vị trí số một và chúng tôi đã tải xong.
‫Vì vậy, đó là một cách tiếp cận khác.
‫Điều đó cũng hoạt động hoàn hảo và đó thậm chí còn là một cách tốt hơn.
‫Vì vậy, bạn không cần phải kiểm tra xem tôi đang ở chủ đề nào?
‫Nhưng bạn tạo một luồng khác để bạn thực hiện công việc này, nhưng bạn cũng làm cho nó trở thành trọng lượng.
‫Vì vậy, bạn làm cho nó không đồng bộ.
‫Bây giờ, một điều nhỏ mà tôi cũng muốn cho bạn thấy là trình duyệt web.
‫Vì vậy, những gì tôi sẽ làm ở đây là tôi sẽ giảm kích thước của nút.
‫Tôi sẽ đặt nó ở đây ở góc trên cùng bên trái và tôi sẽ sử dụng trình duyệt web.
‫Tôi sẽ chỉ kéo nó vào đó và làm cho nó lớn hơn một chút.
‫Vì vậy, bây giờ chúng ta sẽ chỉ có trình duyệt web này và nó sẽ cho chúng ta thấy khía cạnh của chúng ta.
‫Vì vậy, điều gì sẽ xảy ra là bất cứ khi nào tôi nhấn nút, tôi sẽ tải xuống một trang web cụ thể mà tôi
‫sẽ xác định theo cách thủ công.
‫Vì vậy, đây chỉ là một ví dụ nhỏ để thêm vào những gì chúng ta đã thấy cho đến nay.
‫Tôi sẽ không đi vào trình duyệt web đầy đủ.
‫Tôi sẽ không chỉ cho bạn cách làm điều đó.
‫Bạn có thể tiếp tục và thử sức mình.
‫Tôi sẽ chỉ cho bạn cách bây giờ bạn có thể sử dụng HTML mà bạn đã
‫tải xuống từ liên kết cụ thể này, được mã hóa cứng.
‫Và chỉ cần sử dụng nó như vậy hoặc hiển thị nó trong trình duyệt web.
‫Vì vậy, https google. com.
‫Vì vậy, những gì sẽ xảy ra là bất cứ khi nào tôi nhấn nút, google. com sẽ được tải xuống.
‫Bây giờ để làm được điều đó, tôi cần phải có một phương pháp cụ thể và tôi sẽ không gõ nó theo cách thủ công, tôi chỉ cần sao
‫chép và dán nó vào đây.
‫Vì vậy, phương thức này trên thay đổi HTML sẽ được gọi bất cứ khi nào một thuộc tính phụ thuộc được thay đổi.
‫Vì vậy, những gì tôi sẽ nói ở đây là trên HTML, thay đổi cần một đối tượng phụ thuộc và một thuộc tính phụ thuộc thay
‫đổi thành đối số sự kiện được gọi là E.
‫Và ở đây tôi chỉ đang tạo một trình duyệt web sẽ lấy đối tượng phụ thuộc đó và sử dụng nó như một
‫trình duyệt web.
‫Và sau đó nếu trình duyệt web không null, thì hãy điều hướng đến một chuỗi cụ thể sẽ là giá trị mới dưới
‫dạng chuỗi.
‫Vì vậy, bất kể các đối số phụ thuộc đó là gì, các đối số sự kiện thay đổi thuộc tính là gì, đó là nơi
‫tôi lấy chuỗi từ đó.
‫Vì vậy, đó chỉ là những gì cần được hiển thị trên trình duyệt web.
‫Vì vậy, tôi sẽ làm điều đó một cách dễ dàng hơn, nhưng vấn đề là nó không dễ dàng như vậy.
‫Vì vậy, không có cách nào dễ dàng hơn hoặc nhiều cách dễ dàng hơn để làm điều đó.
‫Vì vậy, đó thường là cách tiếp cận mà bạn cần phải làm ở đây.
‫Vì vậy, thay vì chỉ cập nhật nút sau khi tải xong, tôi muốn cập nhật trình duyệt web và do đó
‫trình duyệt web cần có tên.
‫Vì vậy, tôi sẽ đặt tên cho trình duyệt web và tôi sẽ gọi nó là trình duyệt web của tôi.
‫Bây giờ, trình duyệt web, tôi sẽ gọi nó ở đây hoặc thực sự sửa đổi nó ở đây.
‫Điều tôi muốn làm là tôi muốn đặt giá trị của trình duyệt đó và tôi muốn đặt nó bằng thứ gì đó.
‫Và bởi vì bạn có thể thấy chúng tôi cần thuộc tính phụ thuộc và một đối tượng là một giá trị.
‫Vì vậy, làm thế nào để tôi có được điều đó?
‫Tôi lấy nó từ đâu?
‫Chà, có rất nhiều thứ ở đây.
‫Vì vậy, một trong số chúng là chúng ta cần một thuộc tính phụ thuộc, vì vậy hãy tạo một thuộc tính.
‫Hãy đặt nó ở đầu ở đây.
‫Và một lần nữa, tôi sẽ sao chép và dán nó.
‫Tôi sẽ cho bạn thấy nó trông như thế nào và nó làm gì.
‫Vì vậy, nó là một thuộc tính phụ thuộc chỉ đọc được gọi là thuộc tính HTML.
‫Và chúng tôi đăng ký nó.
‫Chúng tôi đăng ký nó bằng HTML.
‫Như bạn có thể thấy, nó cần có tên, tên chuỗi, HTML, sau đó là loại thuộc tính, loại chủ sở hữu và siêu dữ liệu
‫thuộc tính.
‫Vì vậy, đó là điều mà chúng tôi đã đề cập đến khi làm việc với các thuộc tính phụ thuộc trong chương WPF.
‫Vì vậy, ở đây tôi vừa tạo bằng HTML, kiểu là nó là một chuỗi.
‫Chủ sở hữu là gì?
‫Đó là cửa sổ chính.
‫Vì vậy, lớp của chúng ta ở đây và loại dữ liệu này là gì hoặc dữ liệu nào tôi muốn cung cấp cho nó?
‫Và tôi cung cấp cho nó siêu dữ liệu đã thay đổi trên HTML.
‫Vậy điều đó có ý nghĩa gì?
‫Vâng, bất cứ khi nào chúng ta đặt thuộc tính HTML trên HTML thay đổi sẽ được gọi.
‫Và đó là phương pháp này ở đây mà chúng ta sẽ được gọi.
‫Vì vậy, bây giờ những gì chúng tôi có thể làm là chúng tôi có thể đặt giá trị của trình duyệt của tôi với những điều sau đây.
‫Chúng ta có thể tiếp tục và nói thuộc tính HTML và đặt nó bằng HTML.
‫Để sử dụng HTML, chúng ta cần phải làm một chút ở đây hoặc có một chút giải pháp.
‫Trên thực tế, tôi sẽ gọi nó là HTML của mình như vậy và tôi cần tạo một biến ở đây.
‫Chỉ sẽ là một chuỗi http l của tôi mà sẽ nói bla bla, chỉ là một chuỗi với văn bản ngu ngốc ở đây, không
‫có gì đặc biệt.
‫Nhưng sau khi tải xong, chúng tôi nhận được kết quả vào chuỗi HTML của mình.
‫Tôi không thể chỉ nói HTML ở đây vì chuỗi này được tạo cục bộ và tôi không thể tạo nó hoặc
‫nó nằm trong phạm vi nhiệm vụ của chúng tôi ở đây và tôi không thể tạo nó bên ngoài.
‫Vì vậy, đó là lý do tại sao tôi cần có một giải pháp nhỏ này.
‫Vì vậy, bây giờ tôi có thể tiếp tục và nói rằng HTML của tôi là HTML.
‫Vì vậy, điều này.
‫Biến ở đây, trong phạm vi trình duyệt web của tôi mà chúng tôi đặt ở đây.
‫Đó là lý do tại sao tôi có thể tiếp tục ngay bây giờ và đặt nó ở đây.
‫Vì vậy, trong phạm vi nhiệm vụ đang chờ đợi của chúng tôi.
‫Tất nhiên, bây giờ, chúng ta cần phải hoàn thành dòng này.
‫Vì vậy, đó là cách bạn có thể đặt giá trị của trình duyệt web.
‫Được rồi.
‫Đó là một giải pháp nhỏ, nhưng nó hoạt động, vì vậy hãy thử nghiệm nó.
‫Hãy thực thi mã của chúng tôi.
‫Đó là nhấn nút.
‫Và chúng tôi ở đó.
‫Vì vậy, chúng tôi có rất nhiều lỗi tập lệnh, nhưng đó là bởi vì chúng tôi chưa nói gì khác.
‫Nhưng như bạn có thể thấy ở đây, chúng tôi hiện đang ở Google, vì vậy chúng tôi có thể truy cập hình ảnh, tới Google Maps, v.v.
‫Vì vậy, bây giờ chúng tôi đã tạo ra trình duyệt nhỏ của mình, chỉ đơn giản là đưa chúng tôi đến với Google.
‫Được rồi, tuyệt.
‫Vì vậy, như tôi đã nói, tôi sẽ không đi quá sâu vào các trình duyệt và nội dung và tôi thậm chí không muốn đi quá
‫sâu vào các chủ đề đó.
‫Nhưng đó chỉ là cách bạn phải thiết lập nó.
‫Đó là một chút, uh, vâng, một chút thiết lập mà bạn cần phải làm.
‫Vì vậy, bạn cần phải có phương thức này, bạn cần có thuộc tính phụ
‫thuộc này và sau đó bạn có thể tiếp tục và đặt giá trị của trình duyệt bằng thuộc tính HTML, là thuộc tính phụ thuộc của
‫chúng tôi và một số mã HTML, là mã HTML mà chúng tôi tải xuống từ Google.
‫Được rồi.
‫Hãy nhanh chóng tóm tắt lại một lần nữa, ý tưởng của việc sử dụng các chủ đề khác nhau là gì?
‫Chà, bạn có chuỗi chính xử lý giao diện người dùng và nếu bạn muốn làm một việc gì đó nặng nề,
‫vì vậy sẽ mất một chút thời gian để làm, chẳng hạn như tải xuống từ web, chẳng hạn như sao chép thứ gì đó
‫từ tệp này sang tệp khác hoặc làm việc với ổ cứng hoặc bất cứ thứ gì.
‫Đó là nơi thực sự có ý nghĩa khi làm điều đó trong nền.
‫Vì vậy, bạn tạo một nhiệm vụ khác hoặc một chuỗi khác đảm nhiệm việc đó.
‫Vì vậy, ở đây chúng tôi đã tạo một tác vụ không đồng bộ thực hiện điều đó trong nền và sau khi hoàn tất, chúng tôi có
‫thể tiếp tục với phần còn lại.
‫Vì vậy, nó sẽ không đóng băng chuỗi chính của chúng tôi, giao diện người dùng của chúng tôi vẫn sẽ hoạt động bình thường và đó là tất cả những
‫gì của nó.
‫Được rồi.
‫Vì vậy, hẹn gặp bạn trong.