Silverlight virgin здесь. Как заставить usercontrol, окружающий мою сетку, автоматически изменять размер, чтобы разместить ширину сетки внутри? В настоящее время usercontrol отображает примерно 300 или 400 пикселей, когда окно браузера намного шире. Он отображает как вертикальные, так и горизонтальные полосы прокрутки вокруг сетки данных, которая является уродливой. Я хочу установить ширину элемента управления на «100%», но это, похоже, не поддерживается. Что мне не хватает?Silverlight сетка с автоматической шириной и высотой
Вот мой XAML до сих пор:
<UserControl x:Class="RichMedia.MainPage"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:data="clr-namespace:System.Windows.Controls;assembly=System.Windows.Controls.Data">
<Grid x:Name="LayoutRoot" Background="White">
<data:DataGrid Name="dataGrid1" AutoGenerateColumns="False"
HorizontalAlignment="Stretch" VerticalAlignment="Stretch"
DataContext="{Binding}" />
</Grid>
</UserControl>
EDIT: Я хотел бы добавить, что я использую контейнеры по умолчанию в Visual Studio 2010 создано при добавлении SilverLight приложение к существующему веб-приложения проекта.
Ниже разметка со страницы хостинг:
<%@ Page Language="C#" AutoEventWireup="true" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
...
<style type="text/css">
html, body { height: 100%; overflow: hidden; }
body { padding: 0; margin: 0; }
html, body { height: 100%; overflow: hidden; }
#silverlightControlHost { height: 100%; text-align:center; }
</style>
<script type="text/javascript" src="Scripts/Silverlight.js"></script>
...
</head>
<body>
<form id="form1" runat="server" style="height:100%">
<div id="silverlightControlHost">
<object data="data:application/x-silverlight-2," type="application/x-silverlight-2" width="100%" height="100%">
<param name="source" value="ClientBin/RichMedia.xap"/>
<param name="onError" value="onSilverlightError" />
<param name="background" value="white" />
<param name="minRuntimeVersion" value="3.0.40818.0" />
<param name="autoUpgrade" value="true" />
<a href="http://go.microsoft.com/fwlink/?LinkID=149156&v=3.0.40818.0" style="text-decoration:none"><img src="http://go.microsoft.com/fwlink/?LinkId=161376" alt="Get Microsoft Silverlight" style="border-style:none"/></a>
</object><iframe id="_sl_historyFrame" style="visibility:hidden;height:0px;width:0px;border:0px"></iframe></div>
</form>
</body>
</html>
Спасибо за ответ. Я отредактировал этот вопрос, так как считаю, что все ваши предложения (бар моей ширины/высоты UC) уже были рассмотрены шаблоном VS. Но у меня все еще есть небольшое окно с сеткой. По-прежнему царапая мою голову ... – grenade
Оказалось, что моя «HorizontalAlignment =« Stretch »VerticalAlignment =« Stretch »'вызывала проблему. Когда я удалял эти атрибуты из данных: элемент DataGrid, сетка занимала все доступное пространство. – grenade