نرم افزار و برنامه نویسی ویندوز

نرم افزار و برنامه نویسی ویندوز

آموزش برنامه نویسی Visual Basic 2010-2019
نرم افزار و برنامه نویسی ویندوز

نرم افزار و برنامه نویسی ویندوز

آموزش برنامه نویسی Visual Basic 2010-2019

آموزش اضافه کردن رشته های فایل Resx . به DataTable و نمایش در DtataDrid

در این ویدئو ریسورس های رشته ای از یک فایل ریسورس (Resources File) .ResX به DataTable اضافه می شه که در DataGrid نمایش داده بشن....

https://aparat.com/v/QLX9s


   Dim OFD As New OpenFileDialog With {.Filter = "Resources File|*.resx"}

        Dim FileName As String = ""

        With OFD

            .SupportMultiDottedExtensions = False

            .Multiselect = False

ReBrowse:

            If .ShowDialog(Me) = DialogResult.Cancel Then Exit Sub

            FileName = .FileName

            If IO.Path.GetFileNameWithoutExtension(FileName).Contains(".") = True Then

                FileName = IO.Path.GetFileNameWithoutExtension(FileName)

                FileName = IO.Path.GetFileNameWithoutExtension(FileName)

                FileName = String.Format("{0}\{1}.resx", FileIO.FileSystem.GetParentPath(.FileName), FileName)

            End If

            Me.ToolStripTextBox1.Text = FileName

            resReader = New Resources.ResXResourceReader(FileName)

            Resources.Clear()

            Resources.Add("(Default)", resReader)

            Dim Name, Value As Object

            resReader.GetEnumerator.Reset()

            Dim dict As IDictionaryEnumerator = resReader.GetEnumerator

            Do While dict.MoveNext = True

                ' resSet.GetEnumerator.MoveNext()

                Name = dict.Key

                Value = dict.Value

                If TypeOf (Value) Is String Then

                    With MultiLanguageDataTable

                        .Rows.Add(Name, Value)

                    End With

                End If

            Loop

               End With

نحوه اضافه کردن ستون های DataGrid در زمان اجرا (RunTime)

در این ویدئوی آموزشی یک DataGrid داریم که قبل از هر چیز باید یک DataTable برای DataSource اون تعیین بشه و همزمان با اضافه کردن ستون های DataTable به ستونهای DataGridTableStyle هم اضافه می شه....

https://aparat.com/v/xCyag


 Dim MultiLanguageDataTable As New DataTable("MultiLanguageDataTable")



With MultiLanguageDataTable

                    MultiLanguageTableStyle.MappingName = .TableName

                    MultiLanguageTableStyle.PreferredColumnWidth = 250

                    .Columns.Clear()

                    With .Columns.Add("ResName")

                        .Caption = "Resource Name"

                    End With

                    DataColumn = New DataGridTextBoxColumn

                    With DataColumn

                        .HeaderText = "Resource Name"

                        .MappingName = "ResName"

                        Width_ = g.MeasureString(.HeaderText, Me.DataGrid1.HeaderFont).Width

                        .Width = If(Width_ < MultiLanguageTableStyle.PreferredColumnWidth, MultiLanguageTableStyle.PreferredColumnWidth, Width_)

                    End With

                    MultiLanguageTableStyle.GridColumnStyles.Clear()

                    Index = MultiLanguageTableStyle.GridColumnStyles.Add(DataColumn)

                    For Each Item As ListViewItem In Me.ListView1.Items

                        With .Columns.Add(Item.SubItems(3).Text)

                            .Caption = Item.SubItems(2).Text


                        End With

                        DataColumn = New DataGridTextBoxColumn

                        With DataColumn

                            .HeaderText = Item.SubItems(1).Text

                            .MappingName = Item.SubItems(3).Text

                            Width_ = g.MeasureString(.HeaderText, Me.DataGrid1.HeaderFont).Width

                            .Width = If(Width_ < MultiLanguageTableStyle.PreferredColumnWidth, MultiLanguageTableStyle.PreferredColumnWidth, Width_)

                        End With

                        Index = MultiLanguageTableStyle.GridColumnStyles.Add(DataColumn)

                    Next

                End With

اضافه کردن همه زبانها به یک ToolStripCombobox برای اضافه کردن به ListView

در این آموزش برای اضافه کردن یک زبان به برنامه مورد نظر ابتدا زبانها به یک آرایه اضافه و سپس DisplayName از زبانها به ComboBox و LCID به یک لیست از دیتا تایپی با کلاس Integer و نهایتها اطلاعات Culture به ListView اضافه می شه....

https://aparat.com/v/WR03Y

    Dim Cultures() As CultureInfo = CultureInfo.GetCultures(CultureTypes.AllCultures)

    Dim LanguageList As New List(Of Integer)


        Dim Index As Integer = -1

        With Me.LanguaheComboBox

            For Each Culture As CultureInfo In Cultures

                If Culture.LCID = 127 Then Continue For

                Index = .Items.Add(Culture.DisplayName)

                LanguageList.Insert(Index, Culture.LCID)

            Next

            If .Items.Count > 0 Then

                .SelectedIndex = 0

            End If

        End With


        Dim Culture_ As CultureInfo = CultureInfo.GetCultureInfo(LanguageList(Me.LanguaheComboBox.SelectedIndex))

        With Me.ListView1.Items

            With .Add((.Count + 1).ToString, 0)

                .SubItems.Add(Culture_.EnglishName)

                .SubItems.Add(Culture_.DisplayName)

                .SubItems.Add(Culture_.Name)

                .SubItems.Add(Culture_.LCID)

            End With

        End With

نمایش متن پیام با زبان تنظیم شده نرم افزار و ترجمه آن به زبان منتخب کاربر


https://aparat.com/v/laSB5


Private Sub ChangeLanguageToolStripMenuItem_DropDownItemClicked(sender As Object, e As ToolStripItemClickedEventArgs) Handles ChangeLanguageToolStripMenuItem.DropDownItemClicked

        Dim Id As String = e.ClickedItem.Tag.ToString

        Dim Result As MsgBoxResult = MsgBox(String.Format("{1}{0}{0}{2}", vbCrLf, ChangeLabguageMessage, ChangeLabguageMessage(Id)), MsgBoxStyle.YesNo)

        If Result = MsgBoxResult.No Then Exit Sub

        My.Settings.LanguageId = e.ClickedItem.Tag.ToString

        My.Settings.Save()

        Application.Restart()

    End Sub

آموزش چگونگی ایجاد ریسورس برای برنامه چندزبانه (روش مطمئن)

در این آموزش برای یک نرم افزار چندزبانه به تعداد زبانها Resources File ایجاد شده و یک کلاسی استفاده می شه که قادر است طبق زبان انتخاب شده متن را از ریسورس فراخوانی و نمایش دهد....

https://aparat.com/v/G3h8S


Public Class CurrentResources


    Private Shared ManagerValue As New Resources.ResourceManager("<ProjectAssembly.ResourcesName>", GetType(<AnyClassesOfProject>).Assembly)

    Public Shared ReadOnly Property Manager() As Resources.ResourceManager

        Get

            Return ManagerValue

        End Get

    End Property

    Public Shared ReadOnly Property Strings(resName As String) As String

        Get

            Return Manager.GetString(resName)

        End Get

    End Property

    Public Shared ReadOnly Property ChangeLabguageMessage() As String

        Get

            Return Manager.GetString("ChangeLabguageMessage")

        End Get

    End Property

End Class