C# nder,联系人S(目标e) { 尝试 { List-listOfContact=新列表(); foreach(e.Results中的var c) { int count=c.PhoneNumbers.count(); for(int i=0;i
在UI XAML中,您可以使用以下代码:C# nder,联系人S(目标e) { 尝试 { List-listOfContact=新列表(); foreach(e.Results中的var c) { int count=c.PhoneNumbers.count(); for(int i=0;i,c#,windows-phone-8,C#,Windows Phone 8,在UI XAML中,您可以使用以下代码: <ListBox Background="White" Margin="10 10 10 10" Name="ContactResultsData" ItemsSource="{Binding listOfContacts}" Height="690"> <ListBox.ItemTemplate> <DataTemplate>
<ListBox Background="White" Margin="10 10 10 10" Name="ContactResultsData" ItemsSource="{Binding listOfContacts}" Height="690">
<ListBox.ItemTemplate>
<DataTemplate>
<Border BorderBrush="#a8a8a8" BorderThickness="0 1 0 0" Width="440" Margin="10 0 10 0">
<StackPanel Margin="12 18 12 18" Tap="StackPanel_Tap" Tag="{Binding Converter={StaticResource PhoneNumberConverter}}">
<TextBlock FontFamily="{StaticResource BYekan}" Name="ContactResultsName" Text="{Binding Path=Name}" />
<TextBlock FontFamily="{StaticResource BYekan}" Name="ContactResultsNumbers" Text="{Binding Path=Number}" Height="30" />
</StackPanel>
</Border>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
<Grid x:Name="ContentPanel" Grid.Row="1" Margin="12,0,12,0">
<StackPanel>
<TextBlock Name="ContactResultsLabel" Text="results are loading..." Style="{StaticResource PhoneTextLargeStyle}" TextWrapping="Wrap" />
<ListBox Name="ContactResultsData" ItemsSource="{Binding}" Height="200" Margin="24,0,0,0" >
<ListBox.ItemTemplate>
<DataTemplate>
<TextBlock Name="ContactResults" Text="{Binding Path=DisplayName, Mode=OneWay}" />
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
</StackPanel>
<Button x:Name="ButtonContacts"
Content="Get All Contacts"
FontSize="15"
Width="200"
Height="70"
Background="AliceBlue"
Foreground="Blue"
HorizontalAlignment="Left"
Click="ButtonContacts_Click"></Button>
<Button x:Name="MergeContacts"
Content="Merge Contacts"
FontSize="15"
Width="200"
Height="70"
Background="AliceBlue"
Foreground="Blue"
HorizontalAlignment="Right"
Click="MergeContacts_Click"></Button>
</Grid>
private void adcnts_Click(object sender, RoutedEventArgs e)
{
aaaaaa();
using (IsolatedStorageFile istf = IsolatedStorageFile.GetUserStoreForApplication())
{
using (IsolatedStorageFileStream istfs = istf.OpenFile("MyContacts.xml", FileMode.Open))
{
XDocument doc = XDocument.Load(istfs);
var query = from d in doc.Root.Descendants("Contacts")
select new
{
firtName = d.Element("name").Value,
mobilePhone = d.Element("phone").Value
};
//Global qq = new Global();
foreach (var po in query)
{
//qq.cnts.Add(new Contactss()
//{
// name = po.firtName,
// number = po.mobilePhone
//});
saveContactTask.FirstName = po.firtName;
saveContactTask.MobilePhone = po.mobilePhone;
saveContactTask.Show();
}
}
}
// saveContactTask.Show();
}
public void aaaaaa()
{
saveContactTask = new SaveContactTask();
saveContactTask.Completed += new EventHandler<SaveContactResult>(saveContactTask_Completed);
}
private void saveContactTask_Completed(object sender, SaveContactResult e)
{
switch (e.TaskResult)
{
// Logic for when the contact was saved successfully
case TaskResult.OK:
MessageBox.Show("Contact saved.");
break;
//Logic for when the task was cancelled by the user
case TaskResult.Cancel:
MessageBox.Show("Save cancelled.");
break;
//Logic for when the contact could not be saved
case TaskResult.None:
MessageBox.Show("Contact could not be saved.");
break;
}
}
}
class CustomContact
{
public string Name { get; set; }
// public List<string> Numbers { get; set; }
public string Number { get; set; }
public CustomContact()
{
}
public CustomContact(string displayName, string phoneNumber)
{
this.Name = displayName;
this.Number = phoneNumber;
}
}
public partial class MainPage : PhoneApplicationPage
{
List<string> numbers = new List<string>();
public MainPage()
{
InitializeComponent();
}
void Contacts_SearchCompleted(object sender, ContactsSearchEventArgs e)
{
try
{
List<CustomContact> listOfContact = new List<CustomContact>();
foreach (var c in e.Results)
{
int count = c.PhoneNumbers.Count();
for (int i = 0; i < count; i++)
{
CustomContact contact = new CustomContact();
contact.Name = c.DisplayName;
contact.Number = c.PhoneNumbers.ElementAt(i).PhoneNumber.ToString();
listOfContact.Add(contact);
}
}
ContactResultsData.ItemsSource = listOfContact;
}
catch (System.Exception)
{
//No results
}
if (ContactResultsData.Items.Any())
{
ContactResultsLabel.Text = "results";
}
else
{
ContactResultsLabel.Text = "no results";
}
}
<ListBox Background="White" Margin="10 10 10 10" Name="ContactResultsData" ItemsSource="{Binding listOfContacts}" Height="690">
<ListBox.ItemTemplate>
<DataTemplate>
<Border BorderBrush="#a8a8a8" BorderThickness="0 1 0 0" Width="440" Margin="10 0 10 0">
<StackPanel Margin="12 18 12 18" Tap="StackPanel_Tap" Tag="{Binding Converter={StaticResource PhoneNumberConverter}}">
<TextBlock FontFamily="{StaticResource BYekan}" Name="ContactResultsName" Text="{Binding Path=Name}" />
<TextBlock FontFamily="{StaticResource BYekan}" Name="ContactResultsNumbers" Text="{Binding Path=Number}" Height="30" />
</StackPanel>
</Border>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>