2013-11-29 1 views
0

내 앱에서 타일을 만들고 추가하는 합법적 인 방법이 있는지 궁금합니다. 메모를 저장하고 그것을 저장하는이 응용 프로그램을 만드는 메신저 내가 이것을 할 방법이 있는지 궁금 해서요. Windows 7.8이 설치되어 있고 최신 SDK를 가지고 있습니다. 3 개의 타일 크기가 모두 지원되고 업데이트되는이 기능을 찾고 있습니다.WP7 - App에 타일 추가 (시작 핀에 고정) 오류

감사합니다.

UPDATE

Public Shared Sub CreateTile(uri As Uri, tiledata As ShellTileData, usewide As Boolean) 
    Dim shellTileType As Type = Type.[GetType]("Microsoft.Phone.Shell.ShellTile, Microsoft.Phone") 
    Dim Createmethod As MethodInfo = shellTileType.GetMethod("Create", {GetType(Uri), GetType(ShellTileData), GetType(Boolean)}) 
    Createmethod.Invoke(Nothing, New Object() {uri, tiledata, usewide}) 
End Sub 
Private Shared Sub SetProperty(instance As Object, name As String, value As Object) 
    Dim setMethod = instance.[GetType]().GetProperty(name).GetSetMethod() 
    setMethod.Invoke(instance, New Object() {value}) 
End Sub 
Private Sub PinToStart_Click(ByVal sender As Object, ByVal e As System.Windows.RoutedEventArgs) 
    Dim Storage As IsolatedStorageFile = IsolatedStorageFile.GetUserStoreForApplication() 
    Dim data As SampleData = TryCast(TryCast(sender, MenuItem).DataContext, SampleData) 
    Dim selectedItem As ListBoxItem = TryCast(Me.SavedNotesList.ItemContainerGenerator.ContainerFromItem(data), ListBoxItem) 
    Dim FS As IsolatedStorageFileStream = Storage.OpenFile("MyNote/SavedNotes/" & data.FileNameX, FileMode.Open, FileAccess.Read) 
    Dim FETime As String = Storage.GetCreationTime("MyNote/SavedNotes/" & data.FileNameX).ToString("dd/mm/yyyy h:mmtt") 
    Using SR As New StreamReader(FS) 
     Dim newTile As ShellTile = ShellTile.ActiveTiles.FirstOrDefault(Function(x) x.NavigationUri.ToString().Contains("/CreateNote.xaml?tile=" & data.FileNameX)) 
     If newTile Is Nothing Then 
      Dim tileDataType As Type = Type.[GetType]("Microsoft.Phone.Shell.IconicTileData, Microsoft.Phone") 
      Dim IconicTileData As ShellTileData = DirectCast(tileDataType.GetConstructor(New Type() {}).Invoke(Nothing), ShellTileData) 
      SetProperty(IconicTileData, "Title", data.FileNameX) 
      SetProperty(IconicTileData, "BackgroundColor", Colors.Transparent) 
      SetProperty(IconicTileData, "IconImage", New Uri("\Assets\202.png", UriKind.Relative)) 
      SetProperty(IconicTileData, "SmallIconImage", New Uri("\Assets\110.png", UriKind.Relative)) 
      SetProperty(IconicTileData, "WideContent1", SR.ReadLine) 
      SetProperty(IconicTileData, "WideContent2", SR.ReadLine) 
      SetProperty(IconicTileData, "WideContent3", FETime) 
      CreateTile(New Uri("/CreateNote.xaml?Titletxt=" & data.FileNameX & "&Bodytxt=" & data.Description, UriKind.Relative), IconicTileData, True) 
     Else 
      MessageBox.Show("The tile has been pin to start!") 
     End If 
    End Using  
End Sub 

김은 지금까지 나는 그것을 만들기 위해 관리하고 그것을 작동합니다! 하지만 한 가지 문제가 있습니다. 사용자가 타일을 클릭하면 사용자가 볼 수있는 CreateNote 페이지로 이동합니다. 사용자가 파일을 편집하거나 저장할 수 없기 때문에 파일에 대한 제어권이 없습니다. 그것의 기본적으로 단지보기 유일한 것. 사용자가 타일을 클릭하면 모든 기능이 활성화 된 상태로 "CreateNote"페이지로 이동하게하려면 어떻게해야합니까?

답변