Windows Phone 7 ResolveHostNameAsync
The class DeviceNetworkInformation packaged within namespace Microsoft.Phone.Net.NetworkInformation provides two overloaded methods to resolve hostname asynchronously.
The overloads differ such that former allows you to specify the network interface using which hostname needs be resolved where as earlier will use the first avialable network interface in the list (If both WiFi and Ethernet are available then my understanding is that Ethernet will take precedence)
Here is a simple app demonstrating how to retrieve IPs against hostname.
Code behind
private void btnResolveHostName_Click(object sender, RoutedEventArgs e)
{
if(!string.IsNullOrEmpty(txtHostName.Text))
{
DnsEndPoint endPoint = new DnsEndPoint(txtHostName.Text, 80);
Microsoft.Phone.Net.NetworkInformation.DeviceNetworkInformation.ResolveHostNameAsync(endPoint, nameResolutionCallback, new object());
}
}
{
if (result.NetworkErrorCode == NetworkError.Success)
{
List<string> items = new List<string>();
items.Add(string.Format("Network Interface Type : {0}", result.NetworkInterface.InterfaceType)); foreach (IPEndPoint ipEndPoint in result.IPEndPoints)
{
items.Add(string.Format("Resvoeld IP : {0}:{1}", ipEndPoint.Address.ToString(), ipEndPoint.Port.ToString()));
} Deployment.Current.Dispatcher.BeginInvoke(() =>
{
lstInfo.ItemsSource = items;
txtHostName.Focus();
});
}
else
{
Deployment.Current.Dispatcher.BeginInvoke(() =>
{
MessageBox.Show(result.NetworkErrorCode.ToString(), "Error", MessageBoxButton.OK);
txtHostName.Focus();
});
}
}
XAML
<!--LayoutRoot is the root grid where all page content is placed-->
<Grid x:Name="LayoutRoot" Background="Transparent">
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<StackPanel x:Name="TitlePanel" Grid.Row="0" Margin="12,17,0,28">
<TextBlock x:Name="ApplicationTitle" Text="Resolve Hostname" Style="{StaticResource PhoneTextNormalStyle}"/>
</StackPanel> <!--ContentPanel - place additional content here-->
<Grid x:Name="ContentPanel" Grid.Row="1" Margin="12,0,12,0">
<TextBox Name="txtHostName" Width="300" Margin="6,-5,150,623" Text="google.com"></TextBox>
<Button Name="btnResolveHostName" Margin="300,-5,-5,623" Click="btnResolveHostName_Click">Resolve</Button>
<ListBox Name="lstInfo" Margin="12,79,6,39" BorderThickness="1" BorderBrush="Azure"></ListBox>
</Grid>
</Grid>
Text Styles for Windows Phone 7
In Windows Phone 7 it is extremelly simple to achieve mutiple levels (nested text items) of display by means of a List Box. This is often a requirements and such a scenario is shown below,
<ListBox x:Name="SearchListBox" Margin="0,112,-12,0" Height="522">
<TextBlock Text="Item 1" TextWrapping="Wrap" Margin="12,-6,12,0" Style="{StaticResource PhoneTextBlockBase}"/>
<TextBlock Text="Item 2" TextWrapping="Wrap" Margin="12,-6,12,0" Style="{StaticResource PhoneTextNormalStyle}"/>
<TextBlock Text="Item 3" TextWrapping="Wrap" Margin="12,-6,12,0" Style="{StaticResource PhoneTextTitle1Style}"/>
<TextBlock Text="Item 4" TextWrapping="Wrap" Margin="12,-6,12,0" Style="{StaticResource PhoneTextTitle2Style}"/>
<TextBlock Text="Item 5" TextWrapping="Wrap" Margin="12,-6,12,0" Style="{StaticResource PhoneTextTitle3Style}"/>
<TextBlock Text="Item 6" TextWrapping="Wrap" Margin="12,-6,12,0" Style="{StaticResource PhoneTextLargeStyle}"/>
<TextBlock Text="Item 7" TextWrapping="Wrap" Margin="12,-6,12,0" Style="{StaticResource PhoneTextExtraLargeStyle}"/>
<TextBlock Text="Item 8" TextWrapping="Wrap" Margin="12,-6,12,0" Style="{StaticResource PhoneTextGroupHeaderStyle}"/>
<TextBlock Text="Item 9" TextWrapping="Wrap" Margin="12,-6,12,0" Style="{StaticResource PhoneTextSmallStyle}"/>
<TextBlock Text="Item 10" TextWrapping="Wrap" Margin="12,-6,12,0" Style="{StaticResource PhoneTextContrastStyle}"/>
<TextBlock Text="Item11" TextWrapping="Wrap" Margin="12,-6,12,0" Style="{StaticResource PhoneTextAccentStyle}"/>
</ListBox>
Ref: http://msdn.microsoft.com/en-us/library/ff769552%28v=vs.92%29.aspx
(See Text Styles section)
About Me
Usman ur Rehman Ahmedis known as a software engineer in Lahore, Pakistan. He is renowned for having an abstract understanding of vast range of technological developments such as programming languages, web development, RIA's and documental writing, and is mainly specialized in developmental analysis.
Tags
- windows phone 7 (15)
- DNN (14)
- Dot Net Nuke (13)
- .NET (5)
- c# (5)
- manifest (4)
- Application (3)
- MySql (3)
- Provider (3)
- Sql (3)
- View all 237 tags »
- Sql Server (3)
- Stored Procedure (3)
- visual sutdio (3)
- API (2)
- Data (2)
- Mango (2)
- Module (2)
- Permission (2)
- PhoneTextBlock (2)
- User Control (2)
- Windows (2)
- config (2)
- console (2)
- developer (2)
- dot net (2)
- emulator (2)
- enumeration (2)
- expression blend (2)
- extension (2)
- loop (2)
- network (2)
- phone 7 (2)
- tools (2)
- transparent (2)
- .ascx (1)
- 3g (1)
- 5.6.2 (1)
- 7.1 (1)
- 7.5 (1)
- AJAX (1)
- Activity (1)
- App.xaml (1)
- AppManifest (1)
- ApplicationIcon (1)
- Arabic (1)
- Background.png (1)
- BuildAction (1)
- Connector (1)
- Control Panel (1)
- Core Version (1)
- Data-tier (1)
- DataBound (1)
- Database (1)
- Dependency (1)
- DeviceNetworkInterface (1)
- Directory (1)
- Dynamic (1)
- EVDO (1)
- Encryption (1)
- File (1)
- FileSystemWatcher (1)
- Filter (1)
- Foreign Key (1)
- Function (1)
- GUID (1)
- GetSiteLog (1)
- Hash (1)
- Host Settings (1)
- IIS6 (1)
- IIS7 (1)
- Integrated Mode (1)
- Internet Explorer (1)
- IsolatedStorage (1)
- Java (1)
- Koder (1)
- Linq (1)
- Lists (1)
- Log (1)
- Marketplace (1)
- Membership (1)
- Microsoft (1)
- NavigationCacheMode (1)
- NavigationContext (1)
- NavigationService (1)
- Notify (1)
- OnClientNodeChecked (1)
- PTCL (1)
- Panaroma (1)
- Password (1)
- Properties (1)
- Query String (1)
- ResXResourceReader (1)
- ResolveHostNameAsync (1)
- Right to Left (1)
- SDK (1)
- SEO (1)
- SendKeys (1)
- SendWait (1)
- SharpPCap (1)
- Stream (1)
