Не уверен, как использовать IsolatedStorage - PullRequest
0 голосов
/ 07 марта 2012

Я хочу создать приложение заметок для Windows Phone 7 с использованием Visual Basic.Я прочитал несколько учебных пособий, но все они подходят для C #, а не VB.По сути, у меня есть главная страница и страница для добавления заметок.Как только пользователь напечатает заметку на странице добавления заметок, заголовок этой заметки появится на главной странице.Я также хочу, чтобы пользователь мог выбрать этот заголовок, и он будет отображать заметку.Я провел небольшое исследование и знаю, что мне понадобится использовать изолированное хранилище (не знаю, как реализовать его в VB) для сохранения заметок.Я думаю, что мне также понадобится список, в котором будет храниться заголовок заметок.Я не прошу, чтобы кто-то просто дал мне код, я прошу некоторые учебники по этому поводу в VB или любые указатели или общую помощь по достижению этого.Спасибо

Ответы [ 3 ]

0 голосов
/ 07 марта 2012

Вы правы, что вам нужно будет использовать IsolatedStorage, если вы хотите писать заметки на телефон (а не где-нибудь в облаке).Вот ссылка на запись в блоге, в которой есть класс (в Visual Basic), в котором есть несколько вспомогательных методов, которые дадут вам некоторые сходные методы с традиционными методами VB.Net (такими как ReadAllText, WriteAllText).Это может быть то, что вы хотите для чтения / записи файловой системы (но, как минимум, вы начнете работать с изолированным хранилищем).

http://www.blakepell.com/2012-03-07-wp7-file-helpers

0 голосов
/ 06 января 2015

Изолированные хранилища

Изолированное хранилище используется для хранения локальных файлов, таких как текстовые файлы, изображения, видео и т. Д., На Windows Phone.Каждому приложению назначается определенное изолированное хранилище, и оно является эксклюзивным ТОЛЬКО для этого приложения.Ни одно другое приложение не может получить доступ к изолированному хранилищу ваших приложений.

Многое можно прочитать здесь Все о изолированном хранилище Windows Phone

Довы начинаете, вам нужно импортировать IsolatedStorage в ваш проект.

Imports System.IO
Imports System.IO.IsolatedStorage

Создание папок

Это создает каталог в изолированном хранилище ваших приложений.Он будет называться «NewFolder»

Dim myIsolatedStorage As IsolatedStorageFile = IsolatedStorageFile.GetUserStoreForApplication()
myIsolatedStorage.CreateDirectory("NewFolder")

. Вы можете создавать папки внутри папок внутри папок, например:

myIsolatedStorage.CreateDirectory("NewFolder/NewFolder1/NewFolder2/NewFolder3")

Для удаления папки:

myIsolatedStorage.DeleteDirectory("NewFolder")

Хорошей практикой при создании и удалении папок является добавление оператора Try Catch вокруг метода создания папки, чтобы в случае возникновения исключения вы или пользователь были уведомлены о том, почему это происходит, например, если папка не существует, следовательно, ее нельзя удалить илисуществующая папка, поэтому ее необходимо заменить и т. д. В приведенном ниже примере показана основная функция создания папки с оператором Try Catch.

Public Sub CreateDirectory(directoryName As String)
Try
    Dim myIsolatedStorage As IsolatedStorageFile = IsolatedStorageFile.GetUserStoreForApplication()
    If Not String.IsNullOrEmpty(directoryName) AndAlso Not myIsolatedStorage.DirectoryExists(directoryName) Then
        myIsolatedStorage.CreateDirectory(directoryName)
    End If
        ' handle the exception
Catch ex As Exception
End Try
End Sub

Для ее использования вы можете сделать:

Me.CreateDirectory("NewFolder")

Для метода удаления:

Public Sub DeleteDirectory(directoryName As String)
Try
    Dim myIsolatedStorage As IsolatedStorageFile = IsolatedStorageFile.GetUserStoreForApplication()
    If Not String.IsNullOrEmpty(directoryName) AndAlso myIsolatedStorage.DirectoryExists(directoryName) Then
        myIsolatedStorage.DeleteDirectory(directoryName)
    End If
        ' handle the exception
Catch ex As Exception
End Try
End Sub

И использовать его:

Me.DeleteDirectory("NewFolder")

Создание файлов

Вы можете создать пустой файлкак это:

Dim myIsolatedStorage As IsolatedStorageFile = IsolatedStorageFile.GetUserStoreForApplication()
Dim writeFile As New StreamWriter(New IsolatedStorageFileStream("NewFolder\SomeFile.txt", FileMode.CreateNew, myIsolatedStorage))

Чтобы удалить файл:

myIsolatedStorage.DeleteFile("NewFolder/SomeFile.txt")

Как и прежде, хорошая практика, когда дело доходит до создания файлов, это всегда проверять, является ли каталог, в который вы пишете, илиудаление существует.

Вы можете сделатьчто-то вроде:

Try
Dim myIsolatedStorage As IsolatedStorageFile = IsolatedStorageFile.GetUserStoreForApplication()
Dim writeFile As StreamWriter
If Not myIsolatedStorage.DirectoryExists("NewFolder") Then
    myIsolatedStorage.CreateDirectory("NewFolder")
    writeFile = New StreamWriter(New IsolatedStorageFileStream("NewFolder\SomeFile.txt", FileMode.CreateNew, myIsolatedStorage))
Else
    writeFile = New StreamWriter(New IsolatedStorageFileStream("NewFolder\SomeFile.txt", FileMode.CreateNew, myIsolatedStorage))

End If
    ' do something with exception
Catch ex As Exception
End Try

Сохранение и чтение текстовых файлов

Чтобы сохранить текстовый файл с вашим контентом, вы можете сделать что-то вроде:

Dim myIsolatedStorage As IsolatedStorageFile = IsolatedStorageFile.GetUserStoreForApplication()
Using writeFile As New StreamWriter(New IsolatedStorageFileStream("myNote.txt", FileMode.Create, FileAccess.Write, myIsolatedStorage))
Dim someTextData As String = "This is some text data to be saved in a new text file in the IsolatedStorage!"
writeFile.WriteLine("note data")
writeFile.Close()
End Using

Чтобы прочитать содержимое текстового файла:

Dim myIsolatedStorage As IsolatedStorageFile = IsolatedStorageFile.GetUserStoreForApplication()
Dim fileStream As IsolatedStorageFileStream = myIsolatedStorage.OpenFile("myFile.txt", FileMode.Open, FileAccess.Read)
Using reader As New StreamReader(fileStream)
TextBlock.Text = reader.ReadLine()
End Using

Я предоставил вам некоторые основы изолированного хранилища Windows Phone и способы его использования, но я весьма Предлагаю вам прочитать больше об этом на Здесь

0 голосов
/ 07 марта 2012

Все примеры кода в MSDN доступны как на C #, так и на VB.См. http://msdn.microsoft.com/en-us/library/ff431744(v=vs.92).aspx

Образец Model-View-ViewModel (в разделе «Общие задачи разработки приложений»), вероятно, является хорошим местом для начала.
Ссылка для загрузки кода VBhttp://go.microsoft.com/fwlink/?LinkId=229339

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...