คำถามติดแท็ก vb.net

Visual Basic.NET (VB.NET) เป็นกระบวนทัศน์หลายภาษาที่มีการจัดการชนิดปลอดภัยการเขียนโปรแกรมคอมพิวเตอร์เชิงวัตถุ นอกเหนือจาก C # และ F # เป็นหนึ่งในภาษาหลักที่กำหนดเป้าหมายใน. NET Framework VB.NET สามารถดูได้ว่าเป็นวิวัฒนาการของ Microsoft Visual Basic 6 (VB6) แต่มีการใช้งานบน Microsoft .NET Framework อย่าใช้แท็กนี้สำหรับคำถาม VB6, VBA หรือ VBScript

3
VB.NET เทียบเท่ากับชวเลขคุณสมบัติ C #?
มี VB.NET เทียบเท่ากับ C # หรือไม่: public string FirstName { get; set; } ฉันรู้ว่าคุณทำได้ Public Property name() As String Get Return _name.ToString End Get Set(ByVal value As String) _name = value End Set End Property แต่ฉันไม่สามารถหาคำตอบเกี่ยวกับชวเลข Visual Basic ของ Google ได้

2
VB.NET IntelliSense: ปิดการใช้งานบรรทัดใหม่ในการเติมข้อความอัตโนมัติ ENTER
เมื่อแก้ไขรหัส C # ใน Visual Studio 2010 ENTERคีย์จะทำให้ IntelliSense ทำตามคำแนะนำปัจจุบันโดยไม่ต้องเพิ่มบรรทัดใหม่ ใน VB.NET พฤติกรรม IntelliSense เริ่มต้นสำหรับENTERคีย์คือการเพิ่มบรรทัดใหม่หลังจากทำตามคำแนะนำปัจจุบัน ฉันจะกำหนดค่า IntelliSense เพื่อเปลี่ยนพฤติกรรม VB.NET เป็น C # หนึ่งได้อย่างไร ฉันรู้แล้วว่าฉันสามารถกดTABหรือSPACEแต่จากนิสัยฉันมักจะจบลงด้วยการกดปุ่มENTER(และเปลี่ยนสาย)

9
IsNothing กับ Is Nothing
มีใครบ้างที่ใช้ VB.NET และมีความชอบหรือต่อต้านการใช้IsNothingซึ่งตรงข้ามกับIs Nothing(ตัวอย่างเช่นIf IsNothing(anObject)หรือIf anObject Is Nothing... )? ถ้าเป็นเช่นนั้นทำไม? แก้ไข: หากคุณคิดว่าทั้งคู่ยอมรับได้อย่างเท่าเทียมกันคุณคิดว่าดีที่สุดที่จะเลือกหนึ่งอันและติดกับมันหรือจะผสมเข้าด้วยกัน?
130 vb.net  nothing 


30
ไม่มีชื่อนี้ในข้อผิดพลาดเนมสเปซใน XAML
ใช้ VS2012 กับแอปพลิเคชัน VB.NET WPF ฉันมีแอพสอน MusicPlayer ง่ายๆที่ฉันใช้เพื่อเรียนรู้ WPF ฉันกำลังแปลงบทช่วยสอนเวอร์ชัน C # เป็น VB.NET ทีละขั้นตอน มี 2 ​​คลาสในแอพที่ทั้งสองอยู่ภายใต้เนมสเปซเดียวกัน ฉันสามารถอ้างอิงเนมสเปซใน XAML ได้ แต่เมื่อฉันพยายามอ้างอิงคลาสออบเจ็กต์ใน XAML ฉันได้รับข้อผิดพลาดและฉันไม่สามารถคอมไพล์ได้ สิ่งที่แปลกคือ IntelliSense ทำงานได้ดีกับทั้งการอ้างอิงเนมสเปซผ่านแท็ก xmlns: c = และเมื่อพิมพ์คลาสออบเจ็กต์โดยใช้ <c: แต่อ็อบเจ็กต์ถูกขีดเส้นใต้และเกิดข้อผิดพลาดขณะพยายามสร้างหรือทำงานในตัวออกแบบ ไฟล์คลาส. vb อยู่ในโฟลเดอร์ชื่อ \ Controls Namespace รูทโปรเจ็กต์หลักถูกปล่อยว่างไว้โดยเจตนา คลาสเขียนโค้ดแบบนี้ ... Namespace MusicPlayer.Controls Public Class UpdatingMediaElement .... code here …

4
วิธีการแบนวัตถุที่ซ้อนกันด้วยนิพจน์ linq
ฉันพยายามทำให้วัตถุที่ซ้อนกันแบนราบเช่นนี้: public class Book { public string Name { get; set; } public IList<Chapter> Chapters { get; set; } } public class Chapter { public string Name { get; set; } public IList<Page> Pages { get; set; } } public class Page { public string Name { get; set; } …
125 c#  .net  vb.net  linq 

6
Breaking / exit ซ้อนใน vb.net
ฉันจะออกจากการซ้อนหรือวนซ้ำใน vb.net ได้อย่างไร ฉันพยายามใช้ทางออก แต่มันกระโดดหรือแตกเพียงอันเดียวสำหรับลูปเท่านั้น ฉันจะทำสิ่งต่อไปนี้ได้อย่างไร: for each item in itemList for each item1 in itemList1 if item1.text = "bla bla bla" then exit for end if end for end for

14
VB ไม่คำนึงถึงตัวพิมพ์เล็กและใหญ่จริงหรือ?
ฉันไม่ได้พยายามเริ่มต้นอาร์กิวเมนต์ที่นี่ แต่ไม่ว่าด้วยเหตุผลใดก็ตามโดยทั่วไปแล้วจะมีการระบุว่า Visual Basic ไม่คำนึงถึงตัวพิมพ์เล็กและภาษา C (และนั่นก็เป็นสิ่งที่ดี) แต่นี่คือคำถามของฉัน: กรณี Visual Basic ไม่สำคัญตรงไหน? เมื่อฉันพิมพ์ ... Dim ss As String Dim SS As String ... ในVisual Studio 2008หรือVisual Studio 2010 IDE อันที่สองมีคำเตือน " Local variable SSถูกประกาศแล้วในบล็อกปัจจุบัน " ใน VBA VBE จะไม่เตะข้อผิดพลาดในทันที แต่เป็นการแก้ไขกรณีโดยอัตโนมัติ ฉันพลาดอะไรบางอย่างที่นี่กับอาร์กิวเมนต์ที่ Visual Basic ไม่คำนึงถึงขนาดตัวพิมพ์หรือไม่ (นอกจากนี้ถ้าคุณรู้หรือสนใจที่จะตอบทำไมมันถึงเป็นเรื่องไม่ดี?) ทำไมฉันถึงถามคำถามนี้ ฉันใช้ Visual Basic ในหลาย …

30
คุณสมบัติที่ซ่อนอยู่ของ VB.NET?
ล็อค คำถามนี้และคำตอบถูกล็อกเนื่องจากคำถามไม่ตรงประเด็น แต่มีความสำคัญทางประวัติศาสตร์ ขณะนี้ยังไม่ยอมรับคำตอบหรือการโต้ตอบใหม่ ฉันได้เรียนรู้การเรียกดูผ่านคุณสมบัติที่ซ่อนอยู่ของ C # มาบ้างแล้วและรู้สึกประหลาดใจเมื่อไม่พบสิ่งที่คล้ายกันสำหรับ VB.NET คุณลักษณะที่ซ่อนอยู่หรือที่รู้จักน้อยกว่าคืออะไร?

27
วิธีรับการควบคุมลูกทั้งหมดของรูปแบบ Windows แบบเฉพาะเจาะจง (ปุ่ม / กล่องข้อความ)
ฉันต้องการรับการควบคุมทั้งหมดในแบบฟอร์มที่เป็นประเภท x ฉันค่อนข้างแน่ใจว่าเคยเห็นรหัสนั้นในอดีตที่เคยใช้อะไรแบบนี้: dim ctrls() as Control ctrls = Me.Controls(GetType(TextBox)) ฉันรู้ว่าฉันสามารถทำซ้ำการควบคุมทั้งหมดในการรับเด็กโดยใช้ฟังก์ชันเรียกซ้ำได้ แต่มีอะไรที่ง่ายกว่าหรือตรงไปตรงมามากกว่านี้หรือไม่อาจเป็นดังนี้ Dim Ctrls = From ctrl In Me.Controls Where ctrl.GetType Is Textbox
120 c#  .net  vb.net  winforms  controls 

7
การวัดเวลาดำเนินการรหัส
ฉันต้องการทราบว่าขั้นตอน / ฟังก์ชัน / คำสั่งใช้เวลานานเท่าใดเพื่อจุดประสงค์ในการทดสอบ นี่คือสิ่งที่ฉันทำ แต่วิธีการของฉันไม่ถูกต้อง 'ทำให้เกิดถ้าความแตกต่างของวินาทีเป็น 0 ไม่สามารถคืนค่ามิลลิวินาทีที่ผ่านไป: สังเกตว่าค่าสลีปคือ 500 ms ดังนั้นวินาทีที่ผ่านไปจึงเป็น 0 ดังนั้นจึงไม่สามารถคืนค่ามิลลิวินาทีได้ Dim Execution_Start As System.DateTime = System.DateTime.Now Threading.Thread.Sleep(500) Dim Execution_End As System.DateTime = System.DateTime.Now MsgBox(String.Format("H:{0} M:{1} S:{2} MS:{3}", _ DateDiff(DateInterval.Hour, Execution_Start, Execution_End), _ DateDiff(DateInterval.Minute, Execution_Start, Execution_End), _ DateDiff(DateInterval.Second, Execution_Start, Execution_End), _ DateDiff(DateInterval.Second, Execution_Start, Execution_End) * …
120 c#  .net  vb.net  datetime  timespan 

9
เขียนไฟล์ข้อความโดยไม่มี Byte Order Mark (BOM)?
ฉันกำลังพยายามสร้างไฟล์ข้อความโดยใช้ VB.Net ด้วยการเข้ารหัส UTF8 โดยไม่มี BOM ใครสามารถช่วยฉันทำอย่างไร ฉันสามารถเขียนไฟล์ด้วยการเข้ารหัส UTF8 แต่จะลบ Byte Order Mark ออกจากไฟล์ได้อย่างไร แก้ไข 1: ฉันได้ลองใช้รหัสแบบนี้แล้ว Dim utf8 As New UTF8Encoding() Dim utf8EmitBOM As New UTF8Encoding(True) Dim strW As New StreamWriter("c:\temp\bom\1.html", True, utf8EmitBOM) strW.Write(utf8EmitBOM.GetPreamble()) strW.WriteLine("hi there") strW.Close() Dim strw2 As New StreamWriter("c:\temp\bom\2.html", True, utf8) strw2.Write(utf8.GetPreamble()) strw2.WriteLine("hi there") strw2.Close() 1.html …

2
จะพยายาม / ในที่สุด (โดยไม่มีการจับ) ฟองข้อยกเว้นหรือไม่?
ฉันเกือบจะคิดบวกว่าคำตอบคือใช่ หากฉันใช้การบล็อกลองในที่สุด แต่ไม่ได้ใช้บล็อก Catch ข้อยกเว้นใด ๆ จะเกิดฟอง แก้ไข? มีความคิดเกี่ยวกับการปฏิบัติโดยทั่วไปหรือไม่? เซท

10
คำเตือนคอมไพเลอร์ที่กำหนดเอง
เมื่อใช้ ObsoleteAtribute ใน. Net จะให้คำเตือนคอมไพเลอร์ที่บอกคุณว่าอ็อบเจ็กต์ / วิธีการ / คุณสมบัติล้าสมัยและควรใช้อย่างอื่น ฉันกำลังทำโปรเจ็กต์ที่ต้องรีแฟคโค้ดอดีตพนักงานเป็นจำนวนมาก ฉันต้องการเขียนแอตทริบิวต์ที่กำหนดเองที่ฉันสามารถใช้เพื่อทำเครื่องหมายวิธีการหรือคุณสมบัติที่จะสร้างคำเตือนของคอมไพเลอร์ที่ให้ข้อความที่ฉันเขียน อะไรทำนองนี้ [MyAttribute("This code sux and should be looked at")] public void DoEverything() { } <MyAttribute("This code sux and should be looked at")> Public Sub DoEverything() End Sub ฉันต้องการให้สิ่งนี้สร้างคำเตือนคอมไพเลอร์ที่ระบุว่า "รหัสนี้ sux และควรได้รับการตรวจสอบ" ฉันรู้วิธีสร้างแอตทริบิวต์ที่กำหนดเองคำถามคือฉันจะทำให้มันสร้างคำเตือนคอมไพเลอร์ในสตูดิโอภาพได้อย่างไร

7
เหตุใดจึงมีความแตกต่างในการตรวจสอบค่า null เทียบกับค่าใน VB.NET และ C #
ในVB.NETสิ่งนี้เกิดขึ้น: Dim x As System.Nullable(Of Decimal) = Nothing Dim y As System.Nullable(Of Decimal) = Nothing y = 5 If x <> y Then Console.WriteLine("true") Else Console.WriteLine("false") '' <-- I got this. Why? End If แต่ใน C # สิ่งนี้เกิดขึ้น: decimal? x = default(decimal?); decimal? y = default(decimal?); y = 5; if …
110 c#  vb.net  .net-4.0  null 

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.